0

API への CURL 呼び出しを使用しています。この呼び出しは、iframe 内でエコーする HTML DOM ツリーを返します。問題は、ベース URL が API のサイトではなく自分のサイトを参照していることです。例: <script type="text/javascript" src="/swf/swfobject.js"></script>API の代わりに私の Web サイトを参照します。CURL の設定オプションを調べましたが、探しているものが見つかりませんでした。誰か助けてくれませんか? 機能する preg_replace を使用してみましたが、予測できないさまざまなリンクがたくさんあります。(そして汚れへの道!)

CURL 呼び出しのコード:

function CallAPI($method, $url, $data = false)
{
    $curl = curl_init();

    switch ($method)
    {
        case "POST":
            curl_setopt($curl, CURLOPT_POST, 1);

            if ($data)
                curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
            break;
        case "PUT":
            curl_setopt($curl, CURLOPT_PUT, 1);
            break;
        default:
            if ($data)
                $url = sprintf("%s?%s", $url, http_build_query($data));
    }

    // Optional Authentication:
    curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
    //curl_setopt($curl, CURLOPT_USERPWD, "username:password");

    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

    return curl_exec($curl);
}


$output = CallAPI($method, $url, $data);

echo $output;

HTML:

<iframe src="videorecorder.php" frameBorder="0" scrolling="no"></iframe>

私を助けてください!

ありがとう

4

1 に答える 1

1

CURLOPT_REFERER

curl_setopt($curl, CURLOPT_REFERER, $referer);
于 2013-04-24T10:37:49.847 に答える