arukas 樱花免费docker容器,可以安装linux系统,但是每隔一段时间会重启,重启以后IP地址和映射到公网的端口都会变,获取IP和端口,我研究了很久终于找到了C#获取IP和端口的办法,用来搭建梯子很不错哦。

//Framework版本必须是4.5以上的
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;//必须要,不然无法访问https

string urlAddr = @"https://app.arukas.io/api/services/……appid……";

HttpWebRequest myReq = (HttpWebRequest)HttpWebRequest.Create(urlAddr);
myReq.Method = "GET";
myReq.ContentType = "application/json";
string username = "……Token……";
string password = "……Secret……";
//注意这里的格式哦,为 "username:password"
string usernamePassword = username + ":" + password;
string code = Convert.ToBase64String(Encoding.ASCII.GetBytes(usernamePassword));
myReq.Headers.Add("Authorization", "Basic " + code);

HttpWebResponse response = (HttpWebResponse)myReq.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
string content = reader.ReadToEnd();
JObject MyData = JsonConvert.DeserializeObject<JObject>(content);
object resultStr = MyData["data"]["attributes"]["port-mappings"][0][0]["host"];
Regex reg = new Regex(@"\d{1,3}-\d{1,3}-\d{1,3}-\d{1,3}");
Match mc = reg.Match(resultStr.ToString());
string ipStr = mc.ToString().Replace('-', '.');
string oldPort = MyData["data"]["attributes"]["port-mappings"][0][0]["container-port"].ToString();
string newPort = MyData["data"]["attributes"]["port-mappings"][0][0]["service-port"].ToString();
HttpContext.Current.Response.Write(ipStr + ":" + newPort + "(" + oldPort + ")");

最新文章

  1. linux系统下使用流行的版本管理工具 Git
  2. 浅谈lua
  3. IE10 CSS hack,IE兼容问题
  4. MoveTo和MoveBy
  5. ASP.NET MVC- HtmlHelper的用法
  6. Java学习笔记---继承和super的用法
  7. php获胜的算法的概率,它可用于刮,大转盘等彩票的算法
  8. Selenium 3----鼠标、键盘操作常用方法
  9. json&amp;pickle模块
  10. 011 处理模型数据时@ModelAttribute的使用
  11. 【PHP】PHP初学者的学习线路
  12. 20155210 2016-2017-2 《Java程序设计》第7周学习总结
  13. WPF定时刷新UI界面
  14. perl6 HTTP::UserAgent (3) JSON
  15. 山东省第四届ACM程序设计竞赛A题:Rescue The Princess
  16. delphi sqlsever 实现存在则更新,不存在
  17. CSS3之 :nth-child(n)语法讲解
  18. Codeforces Beta Round #17 C. Balance (字符串计数 dp)
  19. es6 中的 模板字符串
  20. android学习二---解决ADT Buddle无法自动生成layout和res

热门文章

  1. Acrobat pro Dc 2018破解版|Adobe Acrobat pro Dc 2018中文破解版下载(附序列号/免破解)
  2. 使jira支持reopen率的统计
  3. fastjson1.2.48以下版本存在重大漏洞
  4. 跨站脚本攻击(selfxss)笔记(三)
  5. 渐进式web应用开发---promise式数据库(五)
  6. Java中的单例模式(Singleton Pattern in Java)
  7. Spring Boot 中 Redis 的使用
  8. JQuery开始
  9. c语言进阶7-结构体
  10. 第三章 基础算法和数据结构高频题 I