簡體   English   中英

第三方的REST API基本身份驗證

[英]REST API basic authentication of third party

我使用團隊合作項目管理工具。 我正在嘗試使用團隊合作提供的REST API創建Web應用程序。 但這需要一些身份驗證。 我已經閱讀了團隊合作文檔,這就是他們所說的

認證方式

身份驗證使用HTTP身份驗證進行管理(目前僅支持“基本”)。 每個請求必須包含Authorization HTTP標頭。 使用您的API令牌作為用戶名,並使用“ X”(或其他偽造的文本)作為密碼(僅API令牌用於驗證API請求)。

卷曲示例:

curl -H 'Accept: application/json' -H 'Content-Type: application/json' \
-u APIKEY0123456789:xxx -d '{"request": {"name": "some value"}}' https://yours.teamwork.com

我研究了一些在線教程並編寫了以下代碼

public function portalLogin()
{
        //cURL
        // phpinfo(); //curl is enabled
    $channel = curl_init();
    //options
    curl_setopt($channel, CURLOPT_URL, "http://projects.abounde.com/projects.json?status=LATE");
    curl_setopt($channel, CURLOPT_HTTPHEADER, array("Authoritation:BASIC".base64_encode("secretApiCode:xxx")));
    echo curl_exec($channel);  //return 1
    curl_close($channel);
}

這將返回1。我不知道這意味着什么。 我不知道我在做正確的事。 這是受身份驗證保護的團隊合作api。

http://projects.abounde.com/projects.json

我的最終目標是為不同的用戶提供不同的用戶名和密碼,他們將輸入這些用戶名和密碼,系統將從數據庫中找到密鑰,並從特定用戶中加載項目列表。

public function portalLogin()
{
        //cURL
        // phpinfo();
    $username = "night720elvis";
    $password = "xxx";
    $channel = curl_init();
    //options
    curl_setopt($channel, CURLOPT_URL, "http://projects.abounde.com/projects.json?status=LATE");
    //curl_setopt($channel, CURLOPT_HTTPHEADER, array("Authoritation:BASIC".base64_encode("night720elvis:xxx")));

    curl_setopt($channel, CURLOPT_HTTPHEADER,
                array(
                  "Authorization: Basic " . base64_encode($username . ":" . $password)
    ));
    echo curl_exec($channel);
    curl_close($channel);
}

這驗證

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM