2011-06-04 33 views
1

我有一个Google App Engine应用程序,它使用JavaScript实现了一些相当标准的功能。一个按钮,'保存'按钮应该将文本字段保存到数据存储中的条目中。然而,保存按钮是所有的JavaScript,这是试图做正确的现在以下几点:推荐使用JavaScript与App Engine API交互的方式

  1. 的文件名(数据存储中的KEY_NAME,我会在保存)提示用户
  2. 将它保存在数据存储
  3. 闪光灯讯息,让我们知道他们的保存数据的用户(假设它救了无误差)

什么到App Engine内做到这一点,正确的做法是任何想法?我可以让JS访问某个URL,但我不知道它是否会正确地获取用户的身份验证信息,或者是否有任意用户可以调用该URL并读取/写入数据存储。另外,由于我对App Engine上的JavaScript/jQuery有点新意,我想我可能只是解决了这个问题,所以我愿意接受其他设计选择。

回答

2

在App Engine中实现一个API(一个简单的安静的就足够了),并使用XMLHTTPRequest在Javascript中与它进行交互。对登录用户的任何请求都将包含登录cookie,因此您可以按照与其他任何请求相同的方式来检查身份验证。

+0

适合我。谢谢! – 2011-06-04 16:06:24

0

同时查看即将推出的ProtoRPC库,它将在1.5.1中推出。使处理Javascript客户端变得轻而易举。

0

jquery(一个流行的Javascript库)具有方便的ajax功能。您可以使用它向您的API发送请求。

例如:

$.ajax({ 
    url: '/api_address', 
    dataType: 'json', 
    data: { 
     arg0: JSON.stringify(some_variable), 
     arg1: JSON.stringify(another_variable), 
    }, 
    success: callback 
}; 

对对方一旦收到,服务器可以检查这个请求进行认证来的cookie。

正如其他人所说,protoRPC是应用程序引擎中的一个新API,它使得服务器端API更易于编写。