Кросс-домен jQuery Ajax-запрос и WCF REST-сервис
Я вызываю (Ajax Request) службу REST WCF, и запрос является междоменным запросом.
Если я разверну свой сервис в том же домене, все будет работать как крем. В конце концов, сервис будет находиться в другом домене.
Я использую JQuery 1.5.2. Мой сервис возвращает мне сообщение об ошибке:
<code>errorThrown: "jQuery15208493315000087023_1334089616458 was not called" textStatus: "parsererror" </code>
Хотя в Firefox я вижу значения JSON, но выполнение падает на обработчик ошибок Ajax-запроса.
Мой запрос Ajax:
<code>function CallService() { $.ajax({ type: "GET", url: "http://SomeService/EmpService.svc/GetValues?dv=1455", contentType: "application/json; charset=utf-8", dataType: "jsonp", processdata: false, success: function (data) { ServiceSucceeded(data); }, error: function (jqXHR, textStatus, errorThrown) { debugger; alert("Service Error"); ServiceFailed(jqXHR, textStatus, errorThrown); } }); } </code>
На стороне службы WCF я настроил CrossDomainScriptAccess на true:
<code><webHttpBinding> <binding name="webHttpBindingWithJsonP" crossDomainScriptAccessEnabled="true" /> </webHttpBinding> </code>
Ответ JSON, который я получаю от сервера:
<code>[{"Message": "Stop On Duty", "MessageTime": "\/Date(1334068773893-0500)\/"}, {"Message": "Start On Duty", "MessageTime": "\/Date(1334068763540-0500)\/"}, {"Message": "App_testing_4102012924am", "MessageTime": "\/Date(1334068533627-0500)\/"}, {"Message": "Kunal_testing_4102012924am", "MessageTime": "\/Date(1334067945510-0500)\/"}, {"Message": "Alert: Door Open", "MessageTime": "\/Date(1334066280963-0500)\/"}] </code>
Я что-то здесь упускаю в настройках. Весь код работает нормально, если служба перемещена в тот же домен.
Я посмотрел на подобный пост, но не смог сделать эту работу.