1

我正在尝试使用 Olingo OData Client for JavaScript (odatajs) 读取简单的 OData v4 端点。

Olingo odatajs 网页 说:

您也可以使用 datajs 库中的文档和示例,因为功能和 API 相似。

所以我尝试用这段代码读取 OData 端点:

odatajs.read(uri, function (data) {
    alert(JSON.stringify(data));
  }, function (err) {
    alert(JSON.stringify(err));
});

但是代码给出了这个错误:

Uncaught TypeError: undefined is not a function

使用 jquery/ajax 它总是调用错误函数,但您可以使用 fiddler 查看响应。

4

1 回答 1

1

这是来自 odatajs git 存储库的测试用例,希望对您有所帮助:

var headers = { "Content-Type": "application/json", Accept: "application/json" };
var request = {
    requestUri: "http://<wwww bla bla .com>/endpoints/FoodStoreDataServiceV4.svc/Foods",
    method: "GET",
    headers: headers,
    data: null
};


odatajs.oData.request(request, function (data, response) {
    if ((response.statusCode == '200') &&
        (response.body.indexOf('}', response.body.length - 1) == response.body.length - 1) &&
        response.headers['Content-Type'] == "application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false;charset=utf-8") {
        document.getElementById('msg').innerHTML += ("<div>odatajs V4 testing pass!</div>");
    } else {
        document.getElementById('msg').innerHTML += ("<div>odatajs V4 testing failed.</div>");
    }
}, function (err) {
    document.getElementById('msg').innerHTML += ("<div>odatajs V4 testing failed.</div>");
});
于 2014-11-09T02:27:41.360 回答