首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >节点+ Github网页钩子用于用户活动

节点+ Github网页钩子用于用户活动
EN

Stack Overflow用户
提问于 2017-10-26 15:01:45
回答 1查看 236关注 0票数 3

我会很容易地解释我的问题:

当我的用户(或日志用户)单击回购(应该是这个钩事件)时,我想与github交互。

我有一个简单的带有节点+ express的服务器,但是我真的不明白如何执行它。有人能帮我吗?

代码语言:javascript
运行
复制
const chalk = require('chalk');
const express = require('express');
const serverConfig = require('./config/server.config');

const app = express();

const port = process.env.PORT || serverConfig.port;

console.log(chalk.bgGreen(chalk.black('###   Starting server...   ###'))); // eslint-disable-line

app.listen(port, () => {
  const uri = `http://localhost:${port}`;
  console.log(chalk.red(`> Listening ${chalk.white(serverConfig.env)} server at: ${chalk.bgRed(chalk.white(uri))}`)); // eslint-disable-line
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-26 15:58:07

对此的一个快速测试是使用ngrok从外部提供本地端口:

代码语言:javascript
运行
复制
ngrok http 8080

然后使用API创建钩子,使用ngrok提供的url和个人访问令牌。您还可以在回购钩子部分(https://github.com/$USER/$ repo /USER/hooks/(选择watch事件))手动构建web钩子:

代码语言:javascript
运行
复制
curl "https://api.github.com/repos/bertrandmartel/speed-test-lib/hooks" \
     -H "Authorization: Token YOUR_TOKEN" \
     -d @- << EOF
{
  "name": "web",
  "active": true,
  "events": [
    "watch"
  ],
  "config": {
    "url": "http://e5ee97d2.ngrok.io/webhook",
    "content_type": "json"
  }
}
EOF

启动侦听您指定的POST端点公开的端口的http服务器:

代码语言:javascript
运行
复制
const express = require('express')
const bodyParser = require('body-parser')
const app = express()
const port = 8080;

app.use(bodyParser.json());

app.post('/webhook', function(req, res) {
    console.log(req.body);
    res.sendStatus(200);
})

app.listen(port, function() {
    console.log('listening on port ' + port)
})

启动它:

代码语言:javascript
运行
复制
node server.js

服务器现在将接收星号事件。

为了进行调试,您可以在hooks部分看到来自Github的发送请求:

代码语言:javascript
运行
复制
https://github.com/$USER/$REPO/settings/hooks/

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46957746

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档