0
Я тестировал этот код, и он работал в первый раз; теперь я получаю пустой ответ. Однако с Postman я могу получить ответ. Кажется, что Джсон не читается правильно. Я возвращаю ошибку 400.HttpClient не работает в asp.net (работает в Postman)
private Guid GetToken()
{
var client = new HttpClient();
var uri = "url";
var jsonInString = JsonConvert.SerializeObject(new Authorization());
var response = client.PutAsync(uri, new StringContent(jsonInString, Encoding.UTF8, "application/json")).Result;
var x = response.Content.ReadAsStringAsync().Result;
if(x=="")
return Guid.Empty;
return new Guid(response.Content.ReadAsStringAsync().Result);
}
public class Authorization
{
public string _x;
public Guid _y;
public Guid _z;
public long _a;
public long _b;
public Authorization()
{
x = 123; //dummy data
y = xx-xx-xx-xxxxx-xx-xxxx;
z = xx-xx-xx-xxxxx-xx-xxxx;
a = 123;
b = 123;
}
}
Http code 400 остается за «плохим запросом». Это означает, что бэкэнд приложения не может обрабатывать данный запрос. Возможно, вы перепутали метод (Get/Post) с Postman и вашим реальным приложением. – reporter
Может быть, вы забыли объявить транспортный метод? – reporter
Метод PUT, на самом деле я ничего не изменил. Это правильный ответ var = client.PutAsync (uri, новый StringContent (jsonInString, Encoding.UTF8, "application/json")). Результат; –