ChatworkAPI에서 message를 POST해 봅니다.
이번에는 채팅 그룹에 게시하고 싶습니다.
ChatworkAPI에 express에서 request 모듈로 연결 - Qiita
채팅 워크 API에 게시
샘플 요청
curl -X POST -H "X-ChatWorkToken: YOUR API KEY" -d "body=Hello+ChatWork%21" "https://api.chatwork.com/v1/rooms/{room_id}/messages"
이번은 POST입니다만, 지난번 의 GET와 같이 API에는 헤더에 API KEY(token)를 붙입니다.
이전 내용에서 채팅 당 room_id를 알았다고 생각하므로 그것을 메모해 둡시다.
마지막 코드를 수정하고 작성하여 채팅 워크에 POST (투고)
request 모듈을 사용합니다. express는 4계입니다.
routes/post.js
를 만드세요. room_id와 API 키를 적절하게 변경하십시오.routes/post.js
var express = require('express');
var router = express.Router();
var request = require('request');
router.get('/', function(req, res){
var tweet = 'こんばんわ〜';
var room_id = 投稿したいチャットルームのid;
var options = {
url: 'https://api.chatwork.com/v1/rooms/'+room_id+'/messages',
headers: {
'X-ChatWorkToken': 'YOUR API KEY'
},
form: { body: tweet },
json: true
};
request.post(options, function (error, response, body) {
if (!error && response.statusCode == 200) {
res.render('post', body);
}else{
console.log('error: '+ response.statusCode);
}
});
});
module.exports = router;
url 라우팅 설정을 위해 app.js도 다시 씁니다.
app.js
#8行目付近
var routes = require('./routes/index');
var users = require('./routes/users');
var post = require('./routes/post'); //←追加
#25行目付近
app.use('/', routes);
app.use('/users', users);
app.use('/post', post); //←追加
이번에는 대화방에 게시한 메시지 ID를 표시합니다.
index.ejs
<!DOCTYPE html>
<html>
<head>
<title>Postてすと</title>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<body>
postメッセージid:
<%= message_id %>
</body>
</html>
이제 브라우저에서
localhost:3000/post
에 액세스하면 채팅 작업에 眠い
가 게시됩니다.브라우저에 게시 된 메시지의 ID가 표시되며,
채팅 워크에서는 자신의 계정이 지정한 room에서 졸린다고 합니다.
이런 느낌으로 메시지 투고까지 할 수 있었습니다!
참고 : Node.js : request 모듈을 사용하여 POST 요청하기 - Sarabande.jp
Reference
이 문제에 관하여(ChatworkAPI에서 message를 POST해 봅니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/n0bisuke/items/6a3164b27e3775c81e3c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)