我尝试使用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的响应。
答案 0 :(得分: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>");
});