Невозможно вернуть строку jSon из службы WCF из jQuery - PullRequest
0 голосов
/ 03 марта 2012

У меня есть несколько служб WCF, которые возвращают строку JSON.URL для него: http://localhost:50377/DailyNote/AggregationService/PnlByBookName/{DailyPnl}/Book?bookName={Oil}&buisinessDay={03/02/2011}

Теперь я хочу получить эту строку в HTML, используя jQuery.Javascript:

var Type; var Url; var Data; var ContentType; var DataType; var ProcessData; var method;
function CallService() {
    $.ajax({                
        type: Type, 
        url: Url,                     
        data: "bookName=Oil&buisinessDay=02032012", 
        contentType: ContentType, 
        dataType: DataType, 
        processdata: ProcessData, 
        success: function (msg) {
            alert("service success");
            ServiceSucceeded(msg);
        },
        error: ServiceFailed
    });        
}

function ServiceFailed(xhr) { 
    alert("service fail: " + xhr.status + " : " + xhr.statusText);
    alert(xhr.responseText);
    if (xhr.responseText) {
        var err = xhr.responseText;if (err) error(err); else error({ Message: "Unknown      server error." });
    } return; 
}

function ServiceSucceeded(result) {
    alert("Service Success");
    if (DataType == "jsonp") {
        resultObject = result.GetPnlByBookHierarchy;
        alert(resultObject);
    }
}

function GetData() {
    Type = "GET";
    Url = "http://localhost:50377/DailyNote/AggregationService/PnlByBookName/DailyPnl/Book?";
    DataType = "jsonp";
    ProcessData = true; 
    method = "PnlByBookName";
    ContentType = "application/javascript"; 
    CallService(); 
}

$(document).ready(function () {            
    GetData();            
}); 

При выполнении форма оповещения «Сбой службы» запускается с xhr.status как 200 и xhr.statusText как «Успешно».Я могу позвонить в Службу, но не могу получить обратно jSon.

1 Ответ

0 голосов
/ 03 марта 2012

Если порт или хост не совпадают, служба домена должна вернуть JSONP или вам потребуется прокси-запрос

...