2016-11-11 9 views
0

Я работаю на C#, и до сих пор я использовал метод WebRequest для получения данных GET и POST. Я использую Fiddler, чтобы проверить, что делает браузер, и я добрался до точки, где данные извлекаются из Ajax после публикации некоторых данных. Я не уверен, что мне нужно добавить в свой проект страницу javascript или что и какой код мне нужен в файле javascript и как его называть. В сущности, я должен опубликовать данные {"name": "ABCD"} на адрес www.example.com/Website.AJAX, Website.ashx.Как отправить данные с C# на сайт ajax?

ответ

2

Ajax не так сильно отличается от обычного запроса, поэтому вы можете просто опубликовать его, как обычно. Скорее всего, проблема заключается в том, как бэкэнд рассматривает, что это запрос ajax (если он вообще делает).

Похоже, что вы используете WebForms там, на бэкэнд, вам просто нужно добавить специальный заголовок, скорее всего, (X-Requested-With). Некоторые фреймворки добавляют его, хотя это не является реальным требованием к запросу ajax.

В общем, я бы просто опубликовал обычный запрос с WebRequest, как вы это делали раньше. Если это не сработает, вам нужно изучить исходный запрос из веб-интерфейса, чтобы узнать, что другое. Например. специальный заголовок или запрос Content-Type - это JSON или что-то в этом роде.

P.S. Если вы используете JSON в теле, лучше явно указать тип содержимого application/json; charset=utf-8, если только что-то не с сервером.

+0

Означает ли это, что мне не нужно использовать javascript? В обычном GET или POST я могу видеть элементы формы в Fiddler, но когда я доберусь до Ajax, форма больше не виден. –

+0

Вам не нужен javascript. Нет никакого специального javascript, который вы не можете сделать в C# (если у WebRequest нет особых ограничений). Причина, по которой вы не видите WebForms, заключается в том, что вы не публикуете этот формат. Вместо этого вы используете JSON. В скриншоте есть вкладка JSON, которая покажет вам эти данные. –

+0

Я думаю, что вкладка веб-форм существует для 'Content-Type: application/x-www-form-urlencoded' –

 Смежные вопросы

  • Нет связанных вопросов^_^