簡體   English   中英

API URL在瀏覽器中工作,但在REST中不工作。 它給出“響應狀態代碼不表示成功:404(未找到)。”

[英]API URL Works in browser but not in REST. It gives “Response status code does not indicate success: 404 (Not Found).”

API請求在瀏覽器中工作,它返回一個JSON。 但是當我在web api中調用它時,它給出了“響應狀態代碼並不表示成功:404(未找到)”。 錯誤。 除此之外,其他獲取請求工作正常。

string url = "https://..../search.json?query=abc:123";

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);
}

設置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);
}

嘗試根據另一個Stackoverflow線程中發布的解決方案添加“Accept-Language”標頭

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM