如何爲我們的網站創建休息api,我想用我的android應用程序使用休息api連接服務器。如何連接這些休息api與我的android應用程序,這些背後的方式是什麼。如何創建Rest api,以及如何使用android應用程序來使用其餘api
1
A
回答
1
在這裏,你有一個很好的REST API,與基本做HTTP POST和GET:
public class RestClient {
private ArrayList<NameValuePair> params;
private ArrayList<NameValuePair> headers;
private String url;
private String response;
private int responseCode;
public String GetResponse()
{
return response;
}
public int GetResponseCode()
{
return responseCode;
}
public RestClient(String url)
{
this.url = url;
params = new ArrayList<NameValuePair>();
headers = new ArrayList<NameValuePair>();
}
public void AddParam(String name, String value)
{
params.add(new BasicNameValuePair(name, value));
}
public void AddHeader(String name, String value)
{
headers.add(new BasicNameValuePair(name, value));
}
public void Execute(RequestType requestType) throws Exception
{
switch(requestType)
{
case GET:
{
String combinedParams = "";
if (!params.isEmpty())
{
combinedParams += "?";
for (NameValuePair p : params)
{
String paramString = p.getName() + "=" + URLEncoder.encode(p.getValue(),"UTF-8");
if (combinedParams.length() > 1)
combinedParams += "&" + paramString;
else
combinedParams += paramString;
}
}
HttpGet request = new HttpGet(url + combinedParams);
for (NameValuePair h: headers)
request.addHeader(h.getName(),h.getValue());
ExecuteRequest(request, url);
break;
}
case POST:
{
HttpPost request = new HttpPost(url);
for (NameValuePair h : headers)
{
request.addHeader(h.getName(), h.getValue());
}
if(!params.isEmpty()){
request.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
}
ExecuteRequest(request, url);
break;
}
}
}
public void ExecuteRequest(HttpUriRequest request, String url)
{
HttpClient client = new DefaultHttpClient();
HttpResponse httpResponse;
try
{
httpResponse = client.execute(request);
responseCode = httpResponse.getStatusLine().getStatusCode();
HttpEntity entity = httpResponse.getEntity();
if (entity != null)
{
InputStream in = entity.getContent();
response = ConvertStreamToString(in);
in.close();
}
}
catch (ClientProtocolException e) {
client.getConnectionManager().shutdown();
e.printStackTrace();
} catch (IOException e) {
Log.e("REST_CLIENT", "Execute Request: " + e.getMessage());
client.getConnectionManager().shutdown();
e.printStackTrace();
}
}
private String ConvertStreamToString(InputStream in)
{
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
StringBuilder sb = new StringBuilder();
String line = null;
try
{
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
}
catch (IOException e)
{
e.printStackTrace();
}
finally
{
try
{
in.close();
}
catch (IOException e)
{
Log.e("REST_CLIENT", "ConvertStreamToString: " + e.getMessage());
e.printStackTrace();
}
}
return sb.toString();
}
}
+0
謝謝老兄,但我是休息的初學者,你可以給我一些鏈接,我必須開始學習創建REST,@丹尼爾 – 2013-04-20 05:40:46
+0
只是谷歌它,並沒有結婚的Android進行搜索時,因爲休息來了很多之前比Android – Daniel 2013-04-20 05:43:56
+0
夥計我搜索很多,但我沒有得到正確的解決方案,以瞭解起始水平休息,如果你知道。讓我@丹尼爾 – 2013-04-20 05:53:08
相關問題
- 1. 如何使用Django REST API創建Android應用程序
- 2. 如何使用magento soap或rest API創建phonegap應用程序
- 3. 如何使用Android REST api
- 4. 如何使用電報API創建一個Android應用程序?
- 5. 如何使用nodejs創建POST rest api?
- 6. 如何使用REST API在android應用程序中實現dropbox
- 7. 如何註冊應用程序以使用Office 365 Outlook REST API?
- 8. 如何使用vue.js和wp rest API來渲染WordPress的其餘api數據
- 9. 如何使REST API被註冊的應用程序使用
- 10. Kapacitor如何通過其餘api使用模板創建任務?
- 11. 我可以使用ammap api來構建android應用程序
- 12. 如何爲Ruby應用程序創建REST API?
- 13. 如何使用API創建quickblox應用程序?
- 14. 如何使用流暢API創建Azure AD應用程序?
- 15. 如何使用HTML5 WebSocket API創建Spring WebSocket應用程序?
- 16. 在Python中使用Parse.com REST API創建應用程序
- 17. 使用REST API在Openshift上創建應用程序
- 18. O365創建使用REST API
- 19. 使用PHP創建REST API
- 20. 如何以及在何處使用Firebase實現REST API
- 21. 如何從離子應用程序中使用REST API
- 22. 如何在Rails 3.1應用程序中使用REST API?
- 23. 如何使用rest api在Bonita BPM上創建擴展api
- 24. 如何使用內部API或隱藏的API來開發android應用程序?
- 25. 如何使用REST API
- 26. Silverlight:如何使用REST API?
- 27. 如何使用REST API
- 28. 如何使用Magento Rest API
- 29. 如何使用TFS REST API
- 30. 如何使用REST API
有很多教程在互聯網上公佈。請搜索。我們不是導師。 – 2013-04-20 05:33:26
其實我花了很多的東西,我沒有得到適當的,如果你知道請幫助我。@ SankarV – 2013-04-20 05:34:45