我正在使用Crossrider创建Chrome扩展程序(附加组件)。我在这里做的是调用wcf服务,它检索JOSN数据(2列,10行)。数据正在传递但是当我在crossrider DB中插入这个JSON数据时显示Errror(错误代码405)。我完全完成了Crossrider Async.db Demo中的操作。以下是我的代码
appAPI.ready(function($) {
appAPI.db.async.setFromRemote('Url which retrieves JSON Data', // The url for the request
'URLs', // The database key name
appAPI.time.daysFromNow(7), // optional: expiration
function(response) { // optional: success callback
alert(Successfully saved.');
},
function(status) { //optional: failure callback
alert('Failed error code: ' + status);
});
});
答案 0 :(得分:2)
最后,我完成了另一个将JSON数据插入crossriderDB的过程。 步骤:1)使用appAPI.request.post我获取JSON数据并解析JSON数据
appAPI.request.post({
url: 'http://localhost:3706/Service1.svc/json/GetAffiliatedUrlsCollection',
onSuccess: function(response){
var site = appAPI.JSON.parse(response);//Parse the JSON Data
alert(response);
AddUrlToDB(site);//Calling function to Insertdata to db and passing Parsed JSON data
},
onFailure: function(httpCode) {
alert('Failed to retrieve content. (HTTP Code:' + httpCode + ')');
},
additionalRequestHeaders: {
myHeader: 'value'
},
contentType: 'application/json'
});
步骤:2)这里是将JSON数据插入DB的代码,我在函数中编写了这段代码,这个函数是从上面的代码调用的
function AddUrlToDB(site){
appAPI.db.async.set("StoredUrls", site, appAPI.time.hoursFromNow(12),
function() {
alert("Successfully saved key-value pair to the local database");
});
}
步骤:3)检查数据库中的数据
appAPI.db.async.get("StoredUrls",function(value){
if(value===null || value===undefined){
alert('no data');
}
else{alert(value);}
});