Я использую службу отдыха, чтобы получить некоторые данные json. В качестве тестового жгута они дали мне URL-адрес, и если я перейду к URL-адресу в браузере, у меня есть форма, и я могу поместить некоторый json в текстовое поле, а затем отправить форму и вернуть результат json на перезагрузку страницы ,Использование C# Restsharp, как я могу реплицировать сообщение формы?
Я сейчас пытаюсь повторить это программно с помощью RestSharp в C#, но я бегу на вопрос, где результаты от вызова HTML-страницы, что я буду (вместо результата JSon)
Вот мой код:
var client = new RestClient {BaseUrl = new Uri("http://myhost.com:22333") };
var request = new RestRequest { Method = Method.POST, Resource = "/site/api", RequestFormat = DataFormat.Json };
request.AddBody(new
{
fieldtype = "name", value = "joe"
});
request.AddHeader("accept", "application/json");
client.Authenticator = new NtlmAuthenticator();
var response = client.Execute(request);
var jsonDto = new JsonDeserializer().Deserialize<ResultObj>(response);
, если я смотрю на response.Content в отладчике (перед любым десериализации) я вижу HTML строку веб-страницы, что я пошел с формой, чтобы опубликовать (что-то вроде это)
<html>
<body>
<form method='POST'>
<table>
<tr>
<td>Enter the JSON:</td>
<td>
<textarea name="json_input" cols="80" rows="30">
</textarea>
</td>
</tr>
<tr><td colspan='2'><input type='Submit' value='submit'></td></tr>
</table>
</form>
</body>
</html>
Может кто-то посоветовать, что я здесь отсутствует, как я ожидал, чтобы получить тот же результат JSon назад в response.Content, что я вижу после отправки формы в браузере
Что такое 'url', когда вы публикуете' form' с данными в тестовом жгуте? –
Если вы можете поделиться URL-адресом и образцом json, мы сможем помочь. –
Пожалуйста, убедитесь, что API-метод POST (не GET или что-то еще) – Thakur