Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何让我在Heroku上的Hipchat集成进行身份验证?_Heroku_Oauth_Hipchat - Fatal编程技术网

如何让我在Heroku上的Hipchat集成进行身份验证?

如何让我在Heroku上的Hipchat集成进行身份验证?,heroku,oauth,hipchat,Heroku,Oauth,Hipchat,我遵循循序渐进的指南 我制作了一个简单的应用程序,通过正则表达式向安装集成的房间发布消息(如上面的教程所述) 当我最初将集成添加到hipchat聊天室时,它工作得很好。然而,一段时间后,它停止工作 我的Heroku日志中出现以下错误: JWT verification error: 400 Request can't be verified without an OAuth secret 我假设我的配置有问题,或者我没有使用OAuth,但是在谷歌搜索之后,我找不到任何关于它应该是什么样子的具体

我遵循循序渐进的指南

我制作了一个简单的应用程序,通过正则表达式向安装集成的房间发布消息(如上面的教程所述)

当我最初将集成添加到hipchat聊天室时,它工作得很好。然而,一段时间后,它停止工作

我的Heroku日志中出现以下错误:

JWT verification error: 400 Request can't be verified without an OAuth secret
我假设我的配置有问题,或者我没有使用OAuth,但是在谷歌搜索之后,我找不到任何关于它应该是什么样子的具体答案

我的config.json如下所示:

    "production": {
    "usePublicKey": true,
    "port": "$PORT",
    "store": {
        "adapter": "jugglingdb",
        "type": "sqlite3",
        "database": "store.db"
    },
    "whitelist": [
        "*.hipchat.com"
    ]
},
我的请求处理程序如下所示:

app.post('/foo',
    addon.authenticate(),
    function (req, res) {
      hipchat.sendMessage(req.clientInfo, req.identity.roomId, 'bar')
        .then(function (data) {
          res.sendStatus(200);
        });
    }
);

任何关于为Hipchat和Heroku配置和使用Oauth的具体指导都将是惊人的

我个人还没有将jugglingdb适配器与Heroku一起使用过,也不知道您是否可以查看数据库,但它似乎在某个地方消失了


我的建议是开始使用ngrok和redis在本地进行测试,这样您就可以在本地进行故障排除,然后将工作代码推送到Heroku。

我个人没有在Heroku中使用jugglingdb适配器,也不知道您是否可以查看数据库,但它似乎在某个地方从商店消失了


我的建议是开始使用ngrok和redis进行本地测试,这样您就可以在本地进行故障排除,然后将工作代码推送到Heroku。

为了解决我的问题,我需要做三件事:

  • 为我的Heroku应用程序安装。(确认($REDIS_URL)的环境变量已添加到应用程序设置中)
  • 将此行添加到my app.js文件:

    ac.store.register('redis',require('atlassian-connect-express-redis')

  • 将config.json中的production.store对象更改为以下内容:

    “商店”:{ “适配器”:“redis”, “url”:“$REDIS\u url” },


  • 为了解决问题,我需要做三件事:

  • 为我的Heroku应用程序安装。(确认($REDIS_URL)的环境变量已添加到应用程序设置中)
  • 将此行添加到my app.js文件:

    ac.store.register('redis',require('atlassian-connect-express-redis')

  • 将config.json中的production.store对象更改为以下内容:

    “商店”:{ “适配器”:“redis”, “url”:“$REDIS\u url” },


  • 非常感谢,尼克。这确实是我数据库连接的问题。我将提交一个答案,说明到底哪里出了问题,但你的评论给了我正确的方向,即“我下一步应该从哪里开始调查”。谢谢很高兴听到这个消息,马特!你介意把这个添加到answers.atlassian上的帖子里吗,我最初在那里找到的?出于某种原因,我无法在那里发表评论:非常感谢尼克。这确实是我数据库连接的问题。我将提交一个答案,说明到底哪里出了问题,但你的评论给了我正确的方向,即“我下一步应该从哪里开始调查”。谢谢很高兴听到这个消息,马特!你介意把这个添加到answers.atlassian上的帖子里吗,我最初在那里找到的?出于某种原因,我无法在这里发表评论: