Чтобы отправить данные как запрос в методе PostAsync, я использую следующий подход. но я получаю Inernal Server Error.Отправить httpcontent с PostAsync дает внутреннюю ошибку сервера
HttpResponseMessage response;
string stringContent = "{ 'request_key': 'ABCD1234', 'request_code': 'CODE', 'request_type':'ID_type' }";
using(var client = new HttpClient()) {
client.BaseAddress = new Uri(SubscriptionUtility.GetConfiguration("BaseURI"));
client.DefaultRequestHeaders.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(SubscriptionUtility.GetConfiguration("ContentType")));
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", SubscriptionUtility.GetConfiguration("BasicAuthentication"));
response = await client.PostAsync(SubscriptionUtility.GetConfiguration("SubscriptionAPI"), stringContent, new JsonMediaTypeFormatter());
if(response.IsSuccessStatusCode) {
var dataObjects = JsonConvert.DeserializeObject<List<TestClass>>(response.Content.ReadAsStringAsync().Result);
//foreach(var d in dataObjects) {
//}
}
}
Но когда я отправляю запрос через скрипач, он работает отлично. Вот мой запрос стельки
User-Agent: Скрипач
Content-Type: применение/JSON; кодировка = UTF-8
Хост: testapi.com
Content-Length: 93
Авторизация: Основные 12fbe6e1f63d832aa33232323
Сообщение данных: { "request_key": "abcd1234" , "request_code": "CODE", "request_type": "ID_type" }
и что след, когда не используется скрипача? –
Основная авторизация fyi будет Авторизация: Basic 12fbe6e1f63d832aa33232323, а не токен –