0

APIを介してVbulletinにログインするためのスクリプトを作成しました

これがコードです

<?php    
include 'connector.class.php';
    if ($connector==null)
    {
        $connector = new vbConnector();
    }
    $do=$_GET['do'];
    if ($do=="login")
    {

        $user_name=$_GET['username'];
        $user_pass=$_GET['password'];
        $res= $connector->doLogin($user_name,$user_pass, 1);
        echo  $res;
    }

たとえば(http://example.com?do=login&username=test&password=test)のURLでこれをリクエストすると、完全に機能し、すべてが正常に機能します。

ただし、同じURLをcurlまたはfile_get_contentしようとすると、ログに記録されません。

これが私の試練のいくつかです

<?php
    $opts = array('http' => array('header'=> 'Cookie: ' . $_SERVER['HTTP_COOKIE']."\r\n"));
$context = stream_context_create($opts);
echo file_get_contents("http://192.168.5.55/vb_api/index.php?do=login&username=test&password=test");
4

1 に答える 1

1

$contextfile_get_contents呼び出しを渡さなかった。これを試して:

<?php
    $opts = array('http' => array('header'=> 'Cookie: ' . $_SERVER['HTTP_COOKIE']."\r\n"));
    $context = stream_context_create($opts);
    echo file_get_contents("http://192.168.5.55/vb_api/index.php?do=login&username=test&password=test",false,$context);
?>

私はこれが古いことを知っていますが、私の投稿へのこの関連リンクを見つけました。それがあなたの問題を解決することを願っています。

于 2012-09-20T18:35:00.223 に答える