首页 文章

Google Cloud Pub / Sub:无法从GAE endpoints URL获取请求PUSH

提问于
浏览
0

我已将myapp部署到Google App Engine,并进行了设置

runtime: nodejs
env: flex

我的应用域名是

https://myapp.appspot.com

但它被自动重定向到

https://myapp.appspot-preview.com

我还创建了Google Pub / Sub主题并添加了订阅,将Push endpoint url设置为

https://myapp.appspot-preview.com/_ah/push-handlers/sample

用邮递员测试了这个endpoint_url,它确实运行良好,但是当我向Pub / Sub发布消息但没有任何效果时 .

MyApp(Node.js) endpoints 处理程序:

var cors = require('cors');
var express = require('express');
var app = express();
var bodyParser = require('body-parser');
var http = require('http').Server(app);
var io = require('socket.io')(http);

app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
app.use(cors());

app.post('/_ah/push-handlers/sample', function (req, res){
        console.log('PUBSUB_____',req.body); //this should be printed out
        res.status(200).send();
});

//Listener
io.on('connection', function (socket){
        // do something 
});

var server = http.listen(8080, function(){
      console.log('App listening on port %s', server.address().port);
});

这是GAE的日志,似乎pub / sub确实向我的 endpoints 发送请求但是没有去我的处理程序
GAE request log

GAE console log

我感谢任何帮助:)

1 回答

  • 0

    我发现了类似的问题“无法在后面的灵活环境中接收推送消息”

    它对我们不起作用 . 我创建了对https:// 的推送订阅.appspot-preview.com / push / db / istock ant在此主题上发布了一条消息 . 之后我可以在GAE App日志中看到很多nginx / push / db / istock POST请求,所有这些都是307代码 . 没有改变 . 没有请求传递给GAE应用程序

    https://code.google.com/p/cloud-pubsub/issues/detail?id=49

    开发团队的最新答案是

    我们有一个将在未来几周内推出的解决方案 . 作为ETA,这可能会有所变化,可以延长,但应在1月21日前推出 .

相关问题