【问题标题】:"Bad API request, invalid or expired api_user_key"“错误的 API 请求,无效或过期的 api_user_key”
【发布时间】:2017-11-04 14:21:23
【问题描述】:

所以我的网站向我网站上的 PHP 页面发出 AJAX 请求。它首先登录并获取用户 Pastebin 会话 ID,然后使用它来查看该用户所做的所有粘贴。唯一的问题是我不断收到错误:错误的 API 请求,无效或过期的 api_user_key。我认为我的会话 ID 部分是正确的(我什至尝试使用 http://pastebin.com/api/api_login.php 生成一个

Javascript 代码:

var logindata = {};
var sessionid;

$("#login").click(function() {
    $.each($('#loginform').serializeArray(), function(i, field) {
        logindata[field.name] = field.value;
    });

    $.get("pb_login.php?username=" + logindata['pastebinusername'] + "&password=" + logindata['pastebinpassword'], function(data, status) {
        alert(data);
        sessionid = data;

        $.get("pb_getlists.php?sessionid=" + sessionid, function(data, status) {
            alert(sessionid);
            alert(data);
        });
    });
});

pb_login.php

<?php
$api_dev_key = 'API key here';
$api_user_name = urlencode($_GET['username']);
$api_user_password = urlencode($_GET['password']);
$url = 'https://pastebin.com/api/api_login.php';

$ch = curl_init($url); curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'api_dev_key='.$api_dev_key.'&api_user_name='.$api_user_name.'&api_user_password='.$api_user_password.'');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_NOBODY, 0);

$response = curl_exec($ch);
echo $response;
?>

pb_getlists.php

<?php
$api_dev_key = 'API key here';
$api_user_key = $_GET['sessionid'];
//$api_user_key = '43ded5a66e8ed08603804fe2487c8ab7';
$api_results_limit = '250';
$url = 'https://pastebin.com/api/api_post.php';
$ch = curl_init($url);

curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'api_option=list&api_user_key='.$api_user_key.'&api_dev_key='.$api_dev_key.'&api_results_limit='.$api_results_limit.'');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1); curl_setopt($ch, CURLOPT_NOBODY, 0);

$response = curl_exec($ch);
echo $response;
?>

提前致谢。 :)

编辑:我真的开始认为这是 Pastebin 的 API 的问题。如果是我搞砸了一些愚蠢的事情,我不会感到惊讶,但我不知道它可能是什么。

【问题讨论】:

    标签: javascript php api pastebin


    【解决方案1】:

    是的。我是个白痴。

    我将错误的 IP 列入白名单(您需要将 IP 列入白名单才能使用 Pastebin API)。我正在使用 LAMP 虚拟机进行测试,但当我开始在我的实际网站上进行操作时忘记更改它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-23
      • 1970-01-01
      • 1970-01-01
      • 2014-12-11
      • 2015-10-24
      • 1970-01-01
      相关资源
      最近更新 更多