appengine-java-javascript:如何从web前端删除以字符串为键的实体

appengine-java-javascript:如何从web前端删除以字符串为键的实体,java,javascript,google-app-engine,endpoint,Java,Javascript,Google App Engine,Endpoint,我有以下问题:当我转到https://*.appspot.com/_ah/api#p/questionendpoint/v1/questionendpoint.removeQuestion并输入我的字符串id,例如“ahfzfnryaxzpywwtcvyc3vpdhiqcxiuxvlc3rpb24y4tobda2”,一切正常 如果我从我的页面调用以下代码,则删除失败。为什么?我做错了什么? 我使用与上面相同的键调用removeQuestion函数。。。但它不起作用req看起来正确,并且包含正确的

我有以下问题:当我转到https://*.appspot.com/_ah/api#p/questionendpoint/v1/questionendpoint.removeQuestion并输入我的字符串id,例如“ahfzfnryaxzpywwtcvyc3vpdhiqcxiuxvlc3rpb24y4tobda2”,一切正常

如果我从我的页面调用以下代码,则删除失败。为什么?我做错了什么? 我使用与上面相同的键调用
removeQuestion
函数。。。但它不起作用
req
看起来正确,并且包含正确的rpcParams和字符串键。数据保存值
false
。我不知道我做错了什么

var req = gapi.client.questionendpoint.removeQuestion(key);
req.execute(function( data )
{ 
    addInfo(data);
});
端点函数如下所示,正在工作(通过
\u ah/api/…
链接)

我的问题类的关键定义如下:

@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Extension(vendorName="datanucleus", key="gae.encoded-pk", value="true")
private String key;

好吧,现在,我明白了这是怎么回事

引擎中的所有函数似乎都在使用数组。。。 因此,只有以下工作(其中,
是我的字符串值…)

@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Extension(vendorName="datanucleus", key="gae.encoded-pk", value="true")
private String key;
var data = {};
data['id'] = key; 
var req = gapi.client.questionendpoint.removeQuestion(data);
req.execute(function( data )
{ 
    updateQuestionsTable();
});