Отправка данных на сервер с помощью метода jQuery $ .ajax Post - PullRequest
0 голосов
/ 26 октября 2011

Я использую jQuery Ajax для отправки данных на сервер. Я установил тип записи как POST, но данные всегда отправляются с использованием метода GET. Как отправить данные методом Post?

$.ajax({
        type: "POST",        
        dataType: 'jsonp',            
        url: 'http://do.convertapi.com/Web2Image/json/',
        data: {
            'CUrl':$('#txtUrl').val(),
            'OutputFormat':'png',
            'PageWidth':600,
            'ApiKey':apiKey
        },
        jsonp: "callback",
        success: function (data) {               
        if (data.Result)
        {                
            $('#imgSnapShot').attr('src','data:image/png;base64,'+data.File); 
            $('#dvStatus').text("Converted successfully!");
        }
        else {
            $('#dvStatus').text("Error: " + data.Error);
        }             
        },
        });

Как писал Грэм Кларк, запросы jsonp Ajax всегда публикуются как GET. Если я удаляю опцию jsonp, я получаю другую проблему, междоменную ошибку публикации. Есть ли решение моей проблемы?

Ответы [ 3 ]

1 голос
/ 01 февраля 2017

Так как это 5-летний вопрос, но все же, если кто-то посчитает его полезным. В последнее время браузеры внедрили технологию, называемую Cross-Origin Resource Sharing (CORS), которая разрешает запросы Ajax к различным доменам.поэтому придется использовать Cors вместо JSONP

0 голосов
/ 26 октября 2011

Вы не можете отправлять междоменные запросы через JSONP - он не использует XMLHttpRequest. Смотрите здесь для получения дополнительной информации:

http://groups.google.com/group/jquery-dev/browse_thread/thread/e7eb4a23eef342fb?pli=1

0 голосов
/ 26 октября 2011

Я считаю, jsonp всегда отправляется с запросом GET.Если вам нужен POST, используйте json.Проверьте этот вопрос для деталей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...