WCF возвращает результат, но Javascript выдает ошибку

Я создаю простой вызов Javascript для службы WCF, и после того, как сценарий вызвал службу, он возвращает ошибку для вызова. Однако вызов службы WCF через Fiddler вернул мне правильные результаты. Поэтому я попытался снова запустить скрипт с запущенным Fiddler для захвата пакета. Кажется, сценарий не распознает результат как действительный, что приводит к ошибке, поскольку Fiddler снова зафиксировал правильный результат.

Некоторые ссылки:

IWorkflowService:

[ServiceContract]
public interface IWorkflowService
{

    [OperationContract]
    [WebGet(UriTemplate="GetWorkflowDetails?instanceId={instanceId}", ResponseFormat = WebMessageFormat.Json)]
    WorkflowInstance GetWorkflowDetails(string instanceId);

}

[DataContract]
public class WorkflowInstance
{
    //properties
    [DataMember]
    public string Result {get; set;}
}

WorkflowService.cs:

public class WorkflowService : IWorkflowService
{
    public WorkflowInstance GetWorkflowDetails(string instanceId)
    {
        WorkflowInstance instance = new WorkflowInstance() { Result = instanceId };

        return instance;
    }
}

Скрипт на странице aspx:

var args = getQueryVariable("instanceId");
var url = "http://localhost:56091/WorkflowService.svc/GetWorkflowDetails?instanceId="+args;
//alert(url);
$("textArea").append(url);

$.ajax({
    type: "GET",
    url: url,
    success: function (result) {
        alert(result);
    },
    error: function (error) {
        alert("Error: " + error.responseText);
    }
});

Необработанный результат от Fiddler:

HTTP/1.1 200 OK
Server: ASP.NET Development Server/10.0.0.0
Date: Wed, 10 Sep 2014 02:15:00 GMT
X-AspNet-Version: 4.0.30319
Content-Length: 49
Cache-Control: private
Content-Type: application/json; charset=utf-8
Connection: Close

{"Result":"9b3f4bfb-27f0-4570-82ba-3719109bab76"}

person Axelis Alex    schedule 10.09.2014    source источник
comment
Когда я запускаю скрипт, он выдает ошибку:, но без ответа.   -  person Axelis Alex    schedule 10.09.2014
comment
Вы пытались использовать console.log() и регистрировать весь объект error?   -  person Vivek Kumar Bansal    schedule 10.09.2014
comment
Привет, Вивек, спасибо за предложение, ведение журнала дало мне больше информации, и теперь я вижу что-то красное, как показано ниже: XMLHttpRequest не может загрузить localhost:56091/WorkflowService.svc/. В запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin». Таким образом, доступ к источнику 'localhost:5000' запрещен.   -  person Axelis Alex    schedule 10.09.2014
comment
Обновление: разработчик Chrome теперь показывает мне, что ошибки нет, и вызов возвращает код состояния 200, НО скрипт все еще возвращает мне вызов с ошибкой.   -  person Axelis Alex    schedule 10.09.2014


Ответы (1)


попробуйте это, написав тип данных как application/json и попробуйте поместить результат json в var res=result как

var res=result
alert(res);
person V2Solutions - MS Team    schedule 10.09.2014
comment
Простите, я не совсем понимаю? Еще не очень привык к javascript. Включаю ли я это в функцию успеха? - person Axelis Alex; 10.09.2014
comment
да. вы должны добавить его в успехе. Добавьте также тип данных - person V2Solutions - MS Team; 10.09.2014
comment
V2, спасибо, но после добавления разницы вроде нет. - person Axelis Alex; 10.09.2014