1
Win7
프로젝트에서 사용했던 WebClient
을 HttpClient
시스템으로 변환하려고 시도 중입니다. Win8.1
시스템에서 사용하고 있습니다.WebClient를 HttpClient로 변환
WenClient :
public static void PastebinSharp(string Username, string Password)
{
NameValueCollection IQuery = new NameValueCollection();
IQuery.Add("api_dev_key", IDevKey);
IQuery.Add("api_user_name", Username);
IQuery.Add("api_user_password", Password);
using (WebClient wc = new WebClient())
{
byte[] respBytes = wc.UploadValues(ILoginURL, IQuery);
string resp = Encoding.UTF8.GetString(respBytes);
if (resp.Contains("Bad API request"))
{
throw new WebException("Bad Request", WebExceptionStatus.SendFailure);
}
Console.WriteLine(resp);
//IUserKey = resp;
}
}
그리고이 HttpClient를
public static async Task<string> PastebinSharp(string Username, string Password)
{
using (HttpClient client = new HttpClient())
{
client.DefaultRequestHeaders.Add("api_dev_key", GlobalVars.IDevKey);
client.DefaultRequestHeaders.Add("api_user_name", Username);
client.DefaultRequestHeaders.Add("api_user_password", Password);
using (HttpResponseMessage response = await client.GetAsync(GlobalVars.IPostURL))
{
using (HttpContent content = response.Content)
{
string result = await content.ReadAsStringAsync();
Debug.WriteLine(result);
return result;
}
}
}
}
내 HttpRequest
반환 Bad API request, invalid api option
내 WebClient
반환 동안 성공적인 응답에 첫 샷입니다.
어떻게해야합니까?
내가 대신 쿼리의 헤더를 추가하고 물론 이해하지만, 내가 어떻게 쿼리를 추가 할 생각이 없다 ...
도움 주셔서 감사합니다. 나는 같은 결과를 가지고있다. '잘못된 API 요청, 잘못된 api_option' –
서버로 보낸 요청의 덤프를 제공 할 수 있습니까? (피 들러 또는 다른 방법으로). 그러나 그 해답이 당신의 문제를 해결할 수있는가 아닌가? – Kalten
당신의 오타에주의를 기울이지 않았고 URL이 잘못되었습니다. 고맙습니다. 수색 시간이 3 시간 더 늘어나고 큰 두통을 앓 았어. 나는 이것에서 멀리 아니고 그러나 나는 돌아 서고 있었다. 커다란 감사 –