2010-11-19 5 views
3

Возможно ли использовать данные POST для JSONP? Или все данные должны быть переданы в querystring как запрос GET? любой пример кода.Данные POST для JSONP

благодаря

+0

Привет Abu, JSONP * не может * использоваться для почтовых операций. В большем масштабе он не может быть использован как надежная технология, поскольку он основан на выбросе Javascript, который многими считают угрозой безопасности (некоторые хостеры не позволят вам размещать веб-службы, которые используют JSONP). Просто из любопытства - зачем вам POST - вы можете сделать «логический» пост, позвонив получить с параметрами - скажем, я могу добавить материал в Db и прочитать его личность без проблем. Это не совсем верно с точки зрения идеологии REST, но вы знаете .. – 2011-11-15 14:56:29

ответ

0

Если вы используете JQuery, попробуйте $ .post()

http://api.jquery.com/jQuery.post/

Edit: Более подробное решение здесь: How to use getJSON, sending data with post method?

+1

С этой страницы: «Из-за ограничений безопасности браузера большинство запросов« Ajax »подчиняются одной и той же политике происхождения, и запрос не может успешно извлекать данные из другого домена, субдомена или протокола». POST не работают в междоменном режиме. –

+0

POST работают в кросс-домене, если браузер, инфраструктура, сервер и т. Д. Поддерживают CORS. – hippietrail

6

Нет, вы не можете размещать данные JSONP. JSONP должен быть «отправлен» как тег сценария, а теги сценариев не могут получать информацию POST.

Надеюсь, это поможет.

+0

hmmm у вас есть пример кода, как jsonp должен быть представлен? –

0

Вот пример:

$.ajax({ 
     url: ajaxUrl, 
     dataType: 'jsonp', 
     type: 'GET', 
     cache: false, 
     success: sCallbackFunction, 
     error: eCallbackFunction, 
     jsonpCallback: jsonpCallbackFunction, 
     data: dataObject 
    });