2017-02-26 39 views
-1

我对发布感到困惑,并在android volley中获取请求。在android volley请求中获取和发布方法

你能向我解释他们的区别吗?

我可以使用post方法而不使用Param从URL获取JSON吗?

+0

欢迎来到StackOverflow。请在这里问问题之前,亲切地尝试找到一些信息。例如。使用[Google结果]的第一个答案(https://www.google.de/#q=what+is+the+difference+between+post+and+get+request%3F&*)。除此之外,请每个帖子只提问一个问题。 – gus27

+1

[我应该何时使用GET或POST方法?他们之间有什么区别?](http://stackoverflow.com/questions/504947/when-should-i-use-get-or-post-method-whats-the-difference-between-them) – gus27

回答

0

它们的区别在于服务器中定义的函数。

简而言之,使用GET方法,您可以通过URL发送数据。而使用POST方法,数据嵌入在表单对象中并直接从浏览器发送到服务器。 ...我们通常使用GET来识别和动态呈现页面和POST来发送表单数据,但事实并非总是如此。

,并回答你的第二个问题是肯定的,你可以,但是这不是一个好主意,得到将是更好。这里是如何使用Volley Library发送请求的示例

StringRequest request = new StringRequest(Request.Method.POST, "www.example.com", new Response.Listener<String>() { 
    @Override 
    public void onResponse(String response) { 

    } 
}, new Response.ErrorListener() { 
    @Override 
    public void onErrorResponse(VolleyError error) { 

    } 
}) { 
    @Override 
    protected Map<String, String> getParams() { 
     Map<String, String> parameters = new HashMap<>(); 
     return parameters; 
    } 

    @Override 
    public String getBodyContentType() { 
     return "application/x-www-form-urlencoded; charset=UTF-8"; 
    } 
}; 
AppController.getInstance().addToRequestQueue(request, tag); 
+0

感谢您的支持回答阿米尔。但在这种情况下,我们发送请求与我们的android应用程序,而不是与browser.is我们的要求,例如用户密码显示在任何地方和不安全与get方法? –

+0

基本上它们在安全领域是一样的,但是对于登录,注册和操作来说,使用'POST'方法@ S.HosseinEmadi更好 –

0

您在服务器上工作还是服务器由别人处理? 一般来说,在服务器上工作的人决定方法。

如果你喜欢JAVA服务器上运行,然后说了一个API终点https://sample.api.someurl.com/userInfo/

保持一定的一致性服务器程序员可以使用GET方法来获取用户信息,他可以使用POST方法来更新用户信息,他可能使用DELETE方法删除现有的用户信息。

在此示例中,您的API终点保持不变,但请求方法决定终点的行为方式。

在其他的例子,为了节省时间,服务器开发者可以将所有请求重定向到一个方法和处理它在那里,所以不管你叫GETPOSTDELETE API将返回相同的响应。

所以是的,它不是决定使用哪种方法的Android或UI开发人员,决定使用哪种方法的主要角色是由服务器程序员决定的。

P.S.如果您也在服务器上工作,那么最好的做法是使用GET获取信息,POST方法更新或添加信息,并使用DELETE删除信息。