小编jrm*_*erz的帖子

GAE云端点 - 部署后Api不更新

我开始在我的GAE项目中使用云端点,但是在服务器上没有更新api时遇到了问题.

  • localhost:8888/_ah/api/explorer没问题.

但是当我部署时,没有任何改变.

  • myapp.appspot.com:8888/_ah/api/explorer很糟糕

进一步调查显示url端点更新示例:https://myapp.appspot.com/_ah/api/myapp/v1/foo/list

但加载的客户端API仍然不正确.例如:gapi.client.load('myapp','v1',callback,url); gapi.client.myapp.foo.list();

如果我将调用从foo/list更改为foo/list2,其余的url会更新,api包不会.

google-app-engine google-cloud-endpoints

20
推荐指数
1
解决办法
1万
查看次数

来自GAE Cloud Endpoints的400回复

我正在尝试以下api调用我的GAE Cloud Endpoint:

gapi.client.myapp.foo.update({
  "value": "foobar",
  "key": "keyvaluefromlistoperation"
}).execute(function(resp) {
  console.log(resp);
});
Run Code Online (Sandbox Code Playgroud)

其中回应如下:

[
 {
  "error": {
   "code": 400,
   "message": "Bad Request",
   "data": [
    {
     "domain": "usageLimits",
     "reason": "keyInvalid",
     "message": "Bad Request"
    }
   ]
  },
  "id": "gapiRpc"
 }
]
Run Code Online (Sandbox Code Playgroud)

注意,在此调用之前,我已经过身份验证,插入了几个foo对象,然后调用list以将它们返回给客户端.api的资源管理器更新调用工作正常,并运行下面的jQuery代码段工作正常.有什么建议?或者我只是在实验性的土地上.

var token = gapi.auth.getToken();
$.ajax({
  type:"POST",
  beforeSend: function (request) {
    request.setRequestHeader("Content-Type","application/json");
    request.setRequestHeader("Authorization", token.token_type+" "+token.access_token);
  },
  url: "https://myappid.appspot.com/_ah/api/myapp/v1/foo/update",
  data:JSON.stringify({
     "value": "foobar",
     "key": "keyvaluefromlistoperation"
  }),
  processData: false,
  dataType: "json",
  success: function(msg) {
    console.log(msg);
  },
  failure: function(msg) {
     console.log(msg);
  }
});
Run Code Online (Sandbox Code Playgroud)

这是Java代码:

@Api( …
Run Code Online (Sandbox Code Playgroud)

google-app-engine google-cloud-endpoints

6
推荐指数
1
解决办法
1432
查看次数

验证来自Google Cloud Scheduler的HTTP请求

验证来自Google Cloud Scheduler的HTTP请求的过程是什么?docs(https://cloud.google.com/scheduler/docs/creating)提到您可以创建一个目标为任何公共HTTP终结点的作业,但没有提及服务器如何验证cron / scheduler请求。

cron scheduler google-cloud-platform google-cloud-scheduler

5
推荐指数
1
解决办法
2305
查看次数

通过Cloud Endpoints发送日期和时间

我有一个java.util.Date属性的对象,我正在使用AE Cloud Endpoints服务进行序列化.从客户端,当我发送日期时,一切正常(例如:'2013-05-27').当我尝试添加时间时,它会失败:

{"error":{"message":"com.google.appengine.repackaged.org.codehaus.jackson.map.JsonMappingException:无效的日期/时间格式:2013-05-27T12:00(通过参考链:com.foo) .MyObject [\"date \"])"}}

我能找到的杰克逊默认日期格式的最佳资源是:http://wiki.fasterxml.com/JacksonFAQDateHandling.我尝试了完整的ISO-8601"1970-01-01T00:00:00.000 + 0000",但也失败了.我还尝试了一个UNIX时间戳,它在解析时没有失败,但是在1372中设置了一个日期.

所以两部分问题.一,使用正确的默认格式是什么?还有两个,我们可以修改(我们有权访问)jackson配置,以便我们可以设置自己的序列化格式吗?

google-app-engine

4
推荐指数
1
解决办法
2998
查看次数