[英]XBMC api get request in php with curl
我正在嘗試對PHP中的XBMC api進行GET請求,但我無法使其正常工作。 我已經有一個有效的網址,當我使用REST客戶端模擬GET請求時,它們可以正常工作。
http://localhost:8085/jsonrpc?request={"jsonrpc": "2.0", "id": 1, "method": "Input.ExecuteAction", "params": {"action":"left"}}
當我模擬POST時,我從xbmc收到一個解析錯誤:
{
"error": {
"code": -32700,
"message": "Parse error."
},
"id": null,
"jsonrpc": "2.0"
}
這是我目前擁有的代碼:
<?php
$jsonString = "{\"jsonrpc\": \"2.0\", \"id\": 1, \"method\": \"Input.ExecuteAction\", \"params\": {\"action\":\"left\"}}";
$url = "http://localhost:8085/jsonrpc?request=".$jsonString;
get($url);
function get($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT , 7);
$result = curl_exec($ch);
print $result;
curl_close($ch);
}
但這不會完成工作,就像我模擬POST請求時一樣,會返回解析錯誤。 所以我的想法是我正在執行POST請求,對嗎? 如果沒有,那會是什么問題?
我只是遇到了同樣的問題。 您需要對用於XBMC的URL進行編碼(當今的Kodi)。 因此,在您的情況下:
$jsonString
應該替換為
urlencode($jsonString)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.