2011-12-24 9 views
0

Я являюсь абсолютным новичком для jQuery и json, и я пытаюсь разобрать json-объект, используя jquery. Объект JSON является

{"interested":1,"like":3,"dislike":2} 

код, я использую, чтобы разобрать объект JSON является

$.getJSON("get_reviews.php?mid=x&uid=0", 
function (data) 
{ 
    console.log("parsing"); 
    Interested = data.interested; 
    Dislike = data.dislike; 
    Like = data.like; 
    } 

ошибка я получаю

XMLHttpRequest cannot load http://www.********.***/get_reviews.php?mid=x&uid=0. Origin http://********.*** is not allowed by Access-Control-Allow-Origin. 

Любой знает, где я собираюсь неправильно? Я попытался исправить его несколькими способами (используя разные примеры для запросов AJAX).

---- Редактирование ---- Несмотря на не доступ к любому файлу междоменное, я принял предложение от этого вопроса:

XMLHttpRequest cannot load an URL with jQuery

И добавил: «& обратного вызова =?» в мой код URL, который избавился от ошибки, упомянутой выше, но теперь дает другую ошибку

Uncaught SyntaxError: Unexpected token : 

Поскольку есть только одна линия, она, кажется, относится к толстой кишке в объекте JSON, который кажется крайне странным. Любая идея, почему это может произойти.

PS: Я также принял предложение user1105704 ниже действующей с методом AJAX (я пробовал это раньше), за исключением изготовления DATATYPE «JSONP», и он воспроизводит ошибку относительно Неожиданный маркер

+1

http://stackoverflow.com/q/1653308/1095276, вы пытаетесь сделать запрос crossdomain – kvc

+0

Это не междоменный запрос. Извините за неясность. –

+0

Возможно, это проблема с заголовком. Проверьте http://stackoverflow.com/questions/3595515/xmlhttprequest-error-origin-null-is-not-allowed-by-access-control-allow-origin и http://stackoverflow.com/questions/1653308/ контроля доступа-Allow-Origin-множественного происхождения-доменов. –

ответ

0

выглядит, как я делал гораздо меньшую ошибку, чем я понял. URL, который я дал, был полным URL (http: // www. *. * /get_reviews.php).

Оказывается, именно по этой причине он рассматривается как междоменный доступ. Как только я переключил его на местоположение файла (местоположение от root, поэтому, если файл находится в папке a, затем a/get_reviews.php), он работал как шарм.

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