2016-09-12 3 views
-1

Мне нужно создать простой HTTP-запрос GET для внутрикорпоративной связи.JSONP Utncaught SyntaxError: Неожиданный токен

Запрос открывает дверь. Если я укажу этот URL-адрес в своем браузере: http://172.27.1.20/api/switch/ctrl?switch=1&action=on порт открывается, и браузер показывает его.

{ 
"success" : true 
} 

Я пытаюсь использовать сценарий Ajax для отправки HTTP GET, но журнал консоли показывает:

ctrl?callback=jQuery1600571…_1473684252251&switch=1&action=on&_=1473685494405:2 Utncaught SyntaxError: Unexpected oken : 
function test() {    
      $.ajax({ 
       url: 'http://172.27.1.20/api/switch/ctrl', 
       type: 'GET', 
       data: {switch: 1, action: 'on'}, 
       crossDomain: true, 
       dataType: 'jsonp', 
       dataCharset: 'jsonp', 
       contentType: 'application/json', 
       success: function (result) { 
       console.log("OK - RESULT: " + result); 
       }, 
       error: function (result, error) { 
       console.log("ERROR - RESULT: " + result + " - TYPE ERROR: " + error); 
       } 
      }); 
     } 

кто-то может HelpMe?

+0

I us e jsonp, потому что мне нужно использовать его из другого домена. –

+0

Вы можете принять ответ ниже, если он помог? –

ответ

0

Почему используется jsonp? Это действительно необходимо? Если вы используете JSONP, в ответ нужно установить функцию обратного вызова. Я не вижу вашу функцию обратного вызова в URL-адресе?

изменение функции URL & добавить обратного вызова

url: http://172.27.1.20/api/switch/ctrl?switch=1&action=on&callback=yourCallbackFunctionName 

Когда сервер JSONP получает запрос и находит параметр обратного вызова - вместо возврата простой массив JS он будет возвращать это:

yourCallbackFunctionName({['success', 'true']}); 

теперь в вашем код попытаться прочитать данные - образец (не проверен) код ниже

success: function(dataSentInJsonp){ 
         var len = dataSentInJsonp.length; 
         for(var i=0;i<len;i++){ 
          // iterate and get your variables 
           valVariable= dataSentInJsonp[i]; 
          } 
Смежные вопросы