回覆列表
  • 1 # 奇樂多多多

    獲取 SDK 有多種方式,較為推薦的方式是透過包依賴管理工具下載最新版本。

    包依賴管理工具安裝

    composer

    composer 是推薦的 PHP 包管理工具。安裝 leancloud-sdk 只需執行以下命令:

    composer require leancloud/leancloud-sdk

    注意:

    leancloud-sdk 依賴 PHP 的 curl 擴充套件(常見 Linux 系統下一般需要安裝 php-curl 這個包)。

    如果 composer 訪問 packagist 倉庫有問題,需要 設定映象 或者透過代理(設定 http_proxy 環境變數)訪問。

    手動安裝

    下載 SDK 初始化

    首先進入 控制檯 > 設定 > 應用 Key 來獲取 App ID,App Key 以及伺服器地址。

    然後匯入 Client,並呼叫 initialize 方法進行初始化:

    use \LeanCloud\Client;

    // 引數依次為 App ID、App Key、Master Key

    Client::initialize("{{appid}}", "{{appkey}}", "{{masterkey}}");

    開啟除錯日誌

    在應用開發階段,你可以選擇開啟 SDK 的除錯日誌(debug log)來方便追蹤問題。除錯日誌開啟後,SDK 會把網路請求、錯誤訊息等資訊輸出到 IDE 的日誌視窗,或是瀏覽器 Console 或是 LeanCloud 控制檯的雲引擎日誌中。

    // 放在 SDK 初始化語句 Client::initialize() 後面,只需要呼叫一次即可

    Client::setDebug(true);

    在應用釋出之前,請關閉除錯日誌,以免暴露敏感資料。

    驗證

    首先,確認本地網路環境是可以訪問 LeanCloud 伺服器的,可以執行以下命令:ping "API_BASE_URL"

    API_BASE_URL 為繫結的 API 自定義域名。

    如果當前網路正常將會得到如下響應:

    PING api-ucloud.leancloud.cn (123.59.41.31): 56 data bytes

    64 bytes from 123.59.41.31: icmp_seq=0 ttl=51 time=9.032 ms

    64 bytes from 123.59.41.31: icmp_seq=1 ttl=51 time=7.290 ms

    64 bytes from 123.59.41.31: icmp_seq=2 ttl=51 time=8.131 ms

    64 bytes from 123.59.41.31: icmp_seq=3 ttl=51 time=9.689 ms

    64 bytes from 123.59.41.31: icmp_seq=4 ttl=51 time=6.559 ms

    64 bytes from 123.59.41.31: icmp_seq=5 ttl=51 time=8.665 ms

    64 bytes from 123.59.41.31: icmp_seq=6 ttl=51 time=8.041 ms

    64 bytes from 123.59.41.31: icmp_seq=7 ttl=51 time=8.203 ms

    64 bytes from 123.59.41.31: icmp_seq=8 ttl=51 time=6.288 ms

    64 bytes from 123.59.41.31: icmp_seq=9 ttl=51 time=7.938 ms

    --- api-ucloud.leancloud.cn ping statistics ---

    10 packets transmitted, 10 packets received, 0.0% packet loss

    round-trip min/avg/max/stddev = 6.288/7.984/9.689/0.997 ms

    然後在專案中編寫如下測試程式碼:

    $testObject = new LeanObject("TestObject");

    $testObject->set("words", "Hello world!");

    try {$testObject->save();echo "儲存成功。";} catch (Exception $ex) {echo "儲存失敗。";}

    儲存後執行程式。

    然後開啟 控制檯 > 儲存 > 資料 > TestObject,如果看到如下內容,說明 SDK 已經正確地執行了上述程式碼,安裝完畢。

    如果控制檯沒有發現對應的資料,請參考 問題排查。

    問題排查

    SDK 安裝指南基於當前最新版本的 SDK 編寫,所以排查問題前,請先檢查下安裝的 SDK 是不是最新版本。

    401 Unauthorized

    如果 SDK 丟擲 401 異常或者檢視本地網路訪問日誌存在:

    {"code": 401,"error": "Unauthorized."}

    則可認定為 App ID 或者 App Key 輸入有誤,或者是不匹配,很多開發者同時註冊了多個應用,導致複製貼上的時候,用 A 應用的 App ID 匹配 B 應用的 App Key,這樣就會出現服務端鑑權失敗的錯誤。

    客戶端無法訪問網路

    客3w戶端尤其是手機端,應用在訪問網路的時候需要申請一定的許可權。

  • 中秋節和大豐收的關聯?
  • 辣椒油弄衣服上了,怎麼辦?