gooles fusion 테이블을 중앙 데이터베이스로 사용하는 작은 Chrome 확장 프로그램을 작성하고 싶습니다.Google 퓨전 테이블 (삽입, 테이블 추가 등)에서 변경할 수 없습니다.
기존 테이블과 데이터 (GooleDoc-Webside를 통해 추가)를 사용하면 매우 좋지만 (SELECT, SHOW TABLES, DESCRIBE), 변경 작업을 수행하려고하면 "POST"요청이 필요합니다. 난 항상 다음과 같은 오류가 발생합니다 : "Missing sql parameter." 나는 이런 일이 일어나는 이유가 없다. 나는 많이 이미 시도 (예 : "테이블 TEST3 (A 작성 : 수) : 번호, B"를 삽입합니다.)
내가 쓴 코드는 다음과 같다 :
function Fusion(readyCallback) {
var myObject = {
URL : "https://www.google.com/fusiontables/api/query",
authToken : null,
doGET : function(command,callback) {
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("get"
,this.URL+"?sql="+encodeURI(command)
,true);
xmlhttp.setRequestHeader("Authorization"
,"GoogleLogin auth=" + this.authToken);
xmlhttp.onreadystatechange = function() { callback(xmlhttp.responseText); }
xmlhttp.send();
},
doPOST : function(command,callback) {
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("post"
,this.URL
,true);
xmlhttp.setRequestHeader("Authorization"
,"GoogleLogin auth=" + this.authToken);
xmlhttp.onreadystatechange = function() { callback(xmlhttp.responseText); }
xmlhttp.send("sql="+encodeURI(command));
}
}
// client login authentification
var email = "[email protected]";
var password = "XXX";
var loginURL = "https://www.google.com/accounts/ClientLogin?accountType=GOOGLE&Email="
+ encodeURI(email) + "&Passwd=" + encodeURIComponent(password)
+ "&service=fusiontables&Source=testing";
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("get",loginURL,true);
xmlhttp.onreadystatechange = function() {
var tmp = xmlhttp.responseText;
tmp = tmp.slice(tmp.search("Auth=") + 5, tmp.length);
tmp = tmp.replace(/\n/g, "");
tmp = tmp.replace(/\r/g, "");
myObject.authToken = tmp;
console.log("authentifiaction token status: "+xmlhttp.statusText);
if (readyCallback) {
readyCallback();
}
};
xmlhttp.send();
return myObject;
}
내가 예를 들어 수행하려고 할 경우 이
01에 의해 설명이mf.doPOST("INSERT INTO 2664928(ID,Text,Number) VALUES (2,'Hallo',3)",mc)
또는 테이블이
mf.doPOST("INSERT INTO 2664928(col4,col0,col1) VALUES (2,'Hallo',3)",mc)
, 뭔가 23,516,
column id,name,type
col4,ID,number
col0,Text,string
col1,Number,number
내가
어떤 제안 (I 테이블을 만들려고 할 때 같은)이 오류가 계속? 나는 정말로 혼란스러워!
그동안 Google은 Trusted Testers에서 사용할 수있는 _new_ API를 발표했습니다.이 그룹에 가입하려면 (https://groups.google.com/forum/?fromgroups#!forum/fusion-tables- API 테스터). 거기에서 예제와 JavaScript 클라이언트 라이브러리를 찾을 수 있습니다. – Odi