我正在關注如何從數據庫站點接收數據的文檔,在該數據庫站點中有我需要的我自己的API密鑰。不過,我無法訪問JSON數據。從數據庫收集JSON並收到它在Xamarin Forms上收到問題
這些是我關注的文件。
https://cbis-rest-api.citybreak.com/v1/swagger/ui/index
https://visit.github.io/api-doc/
這是我的代碼目前的樣子:
static public class myData
{
static string apiKey = "myApiKeyNumber";
static string apiApp = "application/json";
static public async Task<JObject> testing()
{
var httpClientRequest = new HttpClient();
httpClientRequest.DefaultRequestHeaders.Add("ApiKey", apiKey);
httpClientRequest.DefaultRequestHeaders.Add("Accept", apiApp);
var result = await httpClientRequest.GetAsync("https://cbis-rest-api.citybreak.com/v1/api/raw/product/");
var resultString = await result.Content.ReadAsStringAsync();
System.Diagnostics.Debug.WriteLine(resultString);
var jsonResult = JObject.Parse(resultString);
System.Diagnostics.Debug.WriteLine(jsonResult);
}
}
當我想用它工作:
async void loadData()
{
var getInfo = await phpApi.testing();
if (getInfo == null)
{
System.Diagnostics.Debug.WriteLine("no data");
}
else {
System.Diagnostics.Debug.WriteLine("data");
}
}
我認爲,我輸入JObject任務的httpadress必須是wron g因爲當我運行這段代碼時,我得到了崩潰:「解析值時遇到意外的字符:<。路徑「,第0行,位置0.」。
當我運行「resultString」System.Diagnostics.Debug.WriteLine(resultString);在日誌中我得到這個:
<!DOCTYPE html PUBLIC "-/W3C/DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml/DTD/xhtm1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>404 - File or directory not found.</title>
<style type="text/css">`
這意味着,HTTP(https://cbis-rest-api.citybreak.com/v1/api/raw/product/)不具備JSON。 當我看到文檔時,我認爲我遵循正確的說明,但是我有點困惑。
任何幫助,指導將非常感激。我不習慣使用數據庫,所以我非常感謝幫助!
更新:
static public class myData
{
static string apiKey = "myApiKeyNumber";
static string apiApp = "application/json";
static public async Task<JObject> testing()
{
var httpClientRequest = new HttpClient();
httpClientRequest.DefaultRequestHeaders.Add("ApiKey", apiKey);
httpClientRequest.DefaultRequestHeaders.Add("Accept", apiApp);
var result = await httpClientRequest.GetAsync("https://cbis-rest-api.citybreak.com/v1/api/raw/product/getpaged/1");
var resultString = await result.Content.ReadAsStringAsync();
System.Diagnostics.Debug.WriteLine(resultString);
var jsonResult = JObject.Parse(resultString);
return jsonResult;
}
}
有了這個代碼,我得到的錯誤「錯誤從JsonReader,路徑讀取JObject」,行0,位置0" ,而我什麼也沒有在日誌中來自這意味着resultString這裏沒有JSON?我嘗試了許多不同的ID,但結果相同我不知道我在哪裏找到數據的ID
Okok。我只使用phpmyadmin之前,我不認爲這個數據庫系統有一個類似的設置,所以我不知道我在哪裏可以找到我需要的id。當我使用我的代碼,並將httpadress更改爲您建議的一個,而我仍然得到「解析值時遇到意外的字符:<。路徑」,第0行,位置0.「錯誤。我嘗試了不同的ID,但我不斷得到同樣的錯誤。 –
我是一個小公司的實習生,這是他們存儲他們的數據的系統,所以我很不確定它是如何工作的,而且他們也不太瞭解 –
錯誤「」解析值時遇到意外的字符: <。路徑「」僅僅來自http響應,它包含一個html錯誤頁面,你正試圖解析它,就好像它是一個json對象。請運行System.Diagnostics.Debug.WriteLine(resultString);再次顯示您現在正在獲取的整個錯誤消息。也請包括你現在打電話的網址 – irreal