以编程方式在Reddit上发表评论
Post comment programmatically to Reddit
我正在尝试使用Snoocore库以编程方式向Reddit发布评论。
这是我的代码:
function postComment() {
var commentText = document.getElementById("response").value;
reddit('/api/comment').post({
api_type: 'json',
thing_id: getUrlVars()['link'],
text: commentText
});
}
我用我的按钮中的 onclick 事件调用它。
<input type="button" value="Save" id="save-button" data-role="button" onclick="postComment()">
函数 postComment() 执行,但我得到以下 json 响应:
>>> Reddit Response:
{
"json": {
"errors": [
[
"USER_REQUIRED",
"please sign in to do that",
null
]
]
}
}
>>> Endpoint URL: https://ssl.reddit.com/api/comment
>>> Endpoint method: POST
>>> Arguments: {
....
现在,我知道凭据是正确的。
我可以在代码的单独部分登录:
reddit.raw('http://www.reddit.com/api/me.json').get({
}).then(function(data) {
mainReddit(data);
});
但不要发表评论。
为什么这不起作用?我已登录,为什么Reddit认为我没有登录?
编辑:
我添加了 uh 参数,现在我收到 403 错误。
呃: data.data.modhash
我还将我的代码更改为:
function postComment() {
reddit.raw('http://www.reddit.com/api/me.json').get({
}).then(function(data) {
console.log(data);
var commentText = document.getElementById("response").value;
reddit('/api/comment').post({
api_type: 'json',
thing_id: getUrlVars()['link'],
text: commentText,
uh: data.data.modhash
});
});
}
当你在Reddit上发帖时,你必须确保你拥有完整的thing_id - 这意味着你必须根据评论的类型包含t1_和t3_。
相关文章:
- 添加文字和评论功能更新Div
- 包括用于facebook评论框的JavaScript SDK
- facebook”;添加评论“;popup获胜'不要消失
- Javascript/jQuery压缩一个图像正确的评论帖子,并使用Ajax Laravel 5.2保存到控制器中
- 提交评论不适用于新添加的帖子
- YUI Compressor特别评论在JS中添加了分号
- yammer在手机上嵌入评论不显示回复选项
- AJAX PHP评论框userid=0?回复=“&”;
- 连接流星中的两个收藏(帖子评论)
- 评论的含义是什么;Go Horse'在编码方面?这是某种过程吗
- 为什么我的javascript会被评论
- React/Node应用程序中的Facebook评论插件.js仅在刷新时显示
- 正则表达式以匹配评论
- 将评论发布到网址
- 以编程方式在Reddit上发表评论
- 在Reddit上,脚本如何获得评论的赞成票和反对票数
- 当内联链接“#"被点击或输入到url中,就像链接到reddit评论时一样
- 从Reddit提取评论分数,greasemonkey脚本
- 如何使reddit评论数据结构变平
- 如何改变reddit's嵌入评论框架的最大宽度