我有一个swagger url http://somehost/swagger/index.html结束方法,如图所示:
有人对我说http://somehost/api/Referral/GetReferralByNumber是API地址,我可以通过HTTP请求来引用它。
static void Main(string[] args)
{
try
{
System.Net.WebClient client = new System.Net.WebClient();
string result = client.DownloadString("http://somehost/api/Referral/GetReferralByNumber");
}
catch (System.Net.WebException ex)
{
Console.WriteLine(ex);
}
Console.ReadKey();
}
这是测试API的代码,但是
System.Net.WebException:远程服务器返回错误:(404)Not Found exception
被抛出任何帮助?
Client.DownloadString()发出GET请求。您的操作支持POST。尝试使用HttpClient,它应该更适合您的情况。
您正在点击获取请求,而对于Get请求,则没有此类端点。
您应该尝试将HTTP选项Post添加到服务器。
码:
private static readonly HttpClient client = new HttpClient();
HttpResponseMessage response = await client.PostAsJsonAsync(
"api/referral/GetReferralByNumber", data);
其中data
是应该发布到服务器的数据。
你应该创建一个http客户端并像这样使用POST:
var method = HttpMethod.Post;
var endPoint = "http://somehost/api/Referral/GetReferralByNumber";
var request = new HttpRequestMessage(method, endPoint);
var client = new HttpClient();
var response = await httpClient.SendAsync(request);