[英]HttpRequestMessage.Content comes with invalid and unreadable characters
當我從 HttpRequestMessage.Contenc 得到返回時,它就好像被加密了一樣。 有人已經經歷過類似的事情
var client2 = new HttpClient();
client2.DefaultRequestHeaders.Accept.Clear();
client2.DefaultRequestHeaders.TryAddWithoutValidation("Content-Type", "application/json");
var httpRequestMessage = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = uri,
Headers = {
{ HttpRequestHeader.Authorization.ToString(), $"Bearer {resulttoken.access_token}" },
},
Content = new StringContent(dic.ToString())
};
//posting the data here to the endpoint and capturing the request.
var response_teste = client2.SendAsync(httpRequestMessage).Result;
var Result_final = await response_teste.Content.ReadAsStringAsync();
結果 /
" \\b\\0\\0\\0\\0\\0\\0\\0 M? 0?@\ c p \\a( 6A aa w {_F ld/ RG!( y^ E Y 18m b { \\fk% BsCH זU U6Z z {) ; ]4 a\\n + ~ 4* ` 0 1N?-tR / \\0\\0\\0"
而不是使用的response.Content.ReadAsStringAsync()
直接,你可以使用response.Content.ReadAsBufferAsync()
如下,以檢查它是否工作:
var buffer = await response.Content.ReadAsBufferAsync();
var byteArray = buffer.ToArray();
var responseString = Encoding.UTF8.GetString(byteArray, 0, byteArray.Length);
這在我的情況下有效,我想使用 UTF8 應該可以解決大部分問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.