我的代码,出了什么问题?你的建议?我尝试使用没有“.header(”_ method“,”PUT“)”
httpentity entity = null; try { entity = new StringEntity(stringData,http.UTF_8); } catch (UnsupportedEnCodingException e) { e.printstacktrace(); } Map<String,Object> params = new HashMap<String,Object>(); params.put(Aquery.POST_ENTITY,entity); Aquery aq = new Aquery(this); aq.progress(pDialog).AJAX(url,params,String.class,new AJAXCallback<String>() { @OverrIDe public voID callback(String url,String Json,AJAXStatus status) { if(status.getCode() == 200) { } else { } } }.header("Content-Type","application/x-www-form-urlencoded") .header("_method","PUT"));解决方法 它有点隐藏,但AJAXCallback有一个私有方法字段(和相应的setter)用于确定要使用的http方法.默认情况下,它使用METHOD_DETECT,它试图找出要使用的内容,当你添加参数时,它会认为它是一个POST.
所以,而不是:
.header("_method","PUT"));
使用
.method(Aquery.METHOD_PUT)
(参考:https://github.com/androidquery/androidquery/blob/master/src/com/androidquery/callback/AbstractAjaxCallback.java#L280)
总结以上是内存溢出为你收集整理的android – 使用带有PUT请求的AQuery库和StringEntity(String)全部内容,希望文章能够帮你解决android – 使用带有PUT请求的AQuery库和StringEntity(String)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)