API URL在浏览器中有效,但在REST中无效。它给出“响应状态代码不表示成功:404(未找到)”。

时间:2019-04-24 12:00:44

标签: c# asp.net asp.net-web-api

API请求在浏览器中有效,并且返回JSON。但是当我在Web api中将其称为“响应状态代码不表示成功:404(未找到)”时。错误。除此之外,其他获取请求都可以正常工作。

SecretBase

2 个答案:

答案 0 :(得分:0)

设置url变量并删除BaseAddress。当您执行GetStringAsync(url)时,HttpClient将在GetStringAsync的参数中传递的baseAddress和url串联起来

string url = ""; //Set url here

using (HttpClient client = new HttpClient())
{                
    client.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)");
    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(byteArray));

    var content = await client.GetStringAsync(url);
    return JsonConvert.DeserializeObject<Object>(content);
}

答案 1 :(得分:0)

尝试根据在另一个Stackoverflow线程中发布的this解决方案添加“ Accept-Language”标头