首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pastebin.com帖子

Pastebin.com帖子
EN

Stack Overflow用户
提问于 2011-09-27 04:23:59
回答 3查看 1.5K关注 0票数 0

我正试着在Javascript中通过弹出窗口发布一个新的Pastebin。我得到的问题是它说“错误的API请求,无效的api_option”

我正在使用的链接:http://pastebin.com/api/api_post.php?api_dev_key=<KEY>&api_paste_name=T‌​ITLE&api_option=paste&api_paste_code=SOMETEXT

上面说把api_option当做浆糊。我已经尝试过查找其他示例,但还没有成功。每个人都遇到这个问题了吗?

EN

回答 3

Stack Overflow用户

发布于 2011-09-27 04:30:10

你是否碰巧需要发布数据而不是GETting?

此外,这可能不是最好的主意,把你的API密钥放在互联网上,像这样。

票数 3
EN

Stack Overflow用户

发布于 2011-09-27 04:30:27

您如何向Pastebin提交此请求?是通过POST还是通过GET?我最好的猜测是,您正在发送一个GET请求,而该应用程序接口需要一个POST

票数 3
EN

Stack Overflow用户

发布于 2019-06-21 15:39:26

试试这个:

代码语言:javascript
复制
   let api = {
      option: "paste",
      user_key: "XXXXXXXXXXXX",
      dev_key: 'XXXXXXXXXXXX',
      paste_name: "MyTitle",
      paste_format: "JSON",
      paste_private: 0,
      paste_code: ""
};

  let request = new XMLHttpRequest();
  request.open('POST', 'http://pastebin.com/api/api_post.php', true);
  request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
  data['test'] = 'Yeah PasteBin!';
  dataString = 'api_option='+api.option+'&api_user_key='+api.user_key+'&api_dev_key='+api.dev_key+
'&api_paste_name='+api.paste_name+'&api_paste_format='+api.paste_format+
'&api_paste_private='+api.paste_private+'&api_paste_code='+data;
request.onreadystatechange = function() {
    if (request.status == 200 && request.readyState == 4) {
        alert("URL to new pastebin file: " + request.responseText);
    }
}
  request.send(dataString);

代码的主要问题是将所有内容都放在请求URL中,如果是GET请求就可以了。PasteBin: api/api_post.php的URL需要一个POST请求(注意这个名称?),所以您必须像上面那样在主体中发送它。

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

https://stackoverflow.com/questions/7560889

复制
相关文章

相似问题

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