Retrofit 2
底層裏訪問網絡的模塊能夠很方便地替換掉,如今底層用
OkHttp 3
,
和Rx配合極好,用註解,設計模式
Retrofit是一個封裝比較好的,相對更面向開發者的rest請求庫,它的底層網絡請求可使用不一樣的網絡庫來處理,好比OkHttp,HttpClient。
OkHttp 3
谷歌添加它到Android 6 源碼裏了, url.open(
)彷佛就是用這個
OkHttp是square本身實現的一個的一個http庫
被Google官方採用
最新的Android代碼中幹掉了HttpClient,使用OkHttp。
volley庫
google
noHttp
android-async-http庫
網絡訪問框架通過了從使用最原始的AsyncTask構建簡單的網絡訪問框架(甚至不能稱爲框架),後來使用開源的,再到使用,一直不懈的尋找更好的解決方案(銀彈
Chrome下調試REST api
訪問 https://api.bmob.cn 域名,不是Bmob首頁的域名
1 初版API
classes 看作是文件夾,是表的集合classes/GameScore 訪問classes 文件夾下的GameScore表
users users表
/
classes和/
users並列,一個級別
測試:
url
get請求頭
X-Bmob-Application-Id
f2adf0c6f2f2f373586819100cc61eab
X-Bmob-REST-API-Key
8e303f51d14a8ed096b2fceb965b51ad
返回的
數據
strJson字符串
{"ID":2,"createdAt":"2016-05-22 15:31:38","name":"B","objectId":"Yq3vCCCL","updatedAt":"2016-05-22 15:31:38"}
格式化後
{
"ID"
:
2
,
"createdAt"
:
"2016-05-22 15:31:38"
,
"name"
:
"B"
,
"objectId"
:
"Yq3vCCCL"
,
"updatedAt"
:
"2016-05-22 15:31:38"
}
app ID
f2adf0c6f2f2f373586819100cc61eab
REST API Key
8e303f51d14a8ed096b2fceb965b51ad
任何東西,只要能發起HTTP請求(get或post),就你可使用
Bmob提供的接口(
REST API
)
和進行數據交互
postMan插件或者在linux系統環境下調試,curl在windows環境下請求存在數據格式轉換的問題。
Chrome插件 RESTClient插件
postMan
調試get和post請求的 RESTful APIs的
Postman helps you develop APIs faster.
https://chrome.google.com/webstore/detail/postman-rest-client/fdmmgilgnpjigdojojpjoooidkmcomcm?utm_source=chrome-ntp-icon
curl -X POST \
curl -X http://www.csdn.net/article/2013-03-06/2814373-baas-for-mobile-backend-development
中文亂碼
curl http://www.csdn.net/article/2013-03-06/2814373-baas-for-mobile-backend-development
curl 不支持https
curl -X GET
\
-H "X-Bmob-Application-Id:
f2adf0c6f2f2f373586819100cc61eab
" \
-H "X-Bmob-REST-API-Key:
8e303f51d14a8ed096b2fceb965b51ad
" \
-H "Content-Type: application/json" \
curl -X GET -H "X-Bmob-Application-Id:f2adf0c6f2f2f373586819100cc61eab" -H "X-Bmob-REST-API-Key: 8e303f51d14a8ed096b2fceb965b51ad" -H "Content-Type: application/json"
https://api.bmob.cn/1/classes/
person/Yq3vCCCL
curl -X GET
F:\Software\PowerCmd_2.2_green
owerCmd綠色版自帶的
curl
命令行工具