我在做什麼:如何從PHP中獲取遠程JSON或XML API數據並將返回對象指定爲PHP變量?
我正在寫在PHP中的自定義程序,其通過API從在線服務LMS提取數據。現在,我試圖實現可用的單點登錄功能。
當點擊按鈕(通過js或php POST或?)並且最終將用戶瀏覽器重定向到來自API響應中提供的URL時,該程序的這部分需要對API執行GET請求。
該API允許選擇XML或JSON響應,我傾向於使用JSON,但如果需要的話,將使用XML。
從API文檔上發出請求:本文檔中列出應包含在請求報頭中的內容類型 (XML或JSON)並用以下 基前綴
所有請求Uri:https://api.example.com/v1.svc
Eg開放的我們要獲得XML格式的用戶名單將是:
內容類型:文本/ XML
GET https://api.example.com/v1.svc/users?apikey=MY-KEY&source=MY-APP
下面就是我想要實現:
如何獲得用戶的LoginKey
一旦你的用戶ID使y ou想要登錄您需要向/ users/{user-id}發出一個 GET請求,該請求將返回有關 用戶的信息。包括在這裏是一個登錄密鑰,你可以用它來重定向 用戶的瀏覽器。
例如。
得到API https://api.example.com/v1.svc/users/USER-ID?apikey=YOUR_API_KEY&source=sampleapp
響應:
<User> <Id>abc12345678</Id> <UserName>[email protected]</UserName> <FirstName>Rich</FirstName> <LastName>Chetwynd</LastName> ..... <LoginKey>https://demo.example.com/login.aspx?loginkey=xxxzzzyyy777222</LoginKey> </User>
的<LoginKey>
對象的數據是,我需要最終重定向用戶的瀏覽器的URL。
我是新來的API工作,並嘗試了很多方法,我發佈之前無法工作。如果你知道如何做到這一點,如果你分享你的知識,我將非常感激。
謝謝。
謝謝!該按鈕不是表單提交按鈕,因此我可以更改以獲取並獲取上面的代碼之前的獲取數據? – aethergy
當然,如果用戶ID來自查詢字符串,那麼使用'$ _GET ['userid']'而不是'$ _POST ['userid']''。 – MrCode
工作完美!再次感謝你的幫助。 – aethergy