.net 控制器調用外部連接傳參方法

public class RequestHelper
{
/// <summary>
/// 發起post請求
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="url">url</param>
/// <param name="postData">post數據</param>
/// <returns></returns>
public static T PostResponse<T>(string url, object postData)
{
string json = JsonHelper.ToJson(postData);
if (url.StartsWith("https"))
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;
HttpContent httpContent = new StringContent(json);
httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
HttpClient httpClient = new HttpClient();json

T result = default(T);app

HttpResponseMessage response = httpClient.PostAsync(url, httpContent).Result;post

if (response.IsSuccessStatusCode)
{
Task<string> t = response.Content.ReadAsStringAsync();
string s = t.Result;
result = JsonHelper.DeSerializeObject<T>(s);
}
return result;
}url

 


/// <summary>
/// 發起get請求
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="url">url</param>
/// <returns></returns>
public static T GetResponse<T>(string url)
{
if (url.StartsWith("https"))
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;
HttpClient httpClient = new HttpClient();
T result = default(T);
HttpResponseMessage response = httpClient.GetAsync(url).Result;get

if (response.IsSuccessStatusCode)
{
Task<string> t = response.Content.ReadAsStringAsync();
string s = t.Result;
result = JsonHelper.DeSerializeObject<T>(s);
}
return result;
}
}string

調用:it

 List<double[]> logAndLat = new List<double[]>();io

logAndLat.Add(new double[] {113.326196, 34.715269 });class

logAndLat.Add(new double[] {113.321561, 34.722183});object

 

public static double GetArea(List<double[]> points) { string result = RequestHelper.PostResponse<string>("url", points); double.TryParse(result, out double r); return r; }

相關文章
相關標籤/搜索