我正在使用android volley StringRequest将发布请求发送到已经在线托管的PHP文件。此操作在域名更改之前但已生效,但此PHP文件不再将截击请求作为发布请求接收。在PHP文件$_SERVER['REQUEST_METHOD']
中返回GET而不是POST。
这是android volley请求代码段
StringRequest request = new StringRequest(Request.Method.POST, postURL, new Response.Listener<String>(){
@Override
public void onResponse(String s) {
Log.d("MY_DEBUG",s);
}
},new Response.ErrorListener(){
@Override
public void onErrorResponse(VolleyError volleyError) {
}
}) {
@Override
public Map<String, String> getHeaders()
{
Map<String, String> parameters = new HashMap<>();
parameters.put("Connection", "Keep-Alive");
return parameters;
}
@Override
public String getBodyContentType() {
//return "application/x-www-form-urlencoded; charset=UTF-8";
return "application/x-www-form-urlencoded";
}
//adding parameters to send
@Override
protected Map<String, String> getParams() {
Map<String, String> parameters = new HashMap<>();
parameters.put("request", "edit_product");
parameters.put("id", id);
return parameters;
}
};
request.setShouldCache(false);
InitiateVolley.getInstance().addToRequestQueue(request);
这是处理来自Android凌空的发布请求的PHP文件中的前几行代码
if($_SERVER['REQUEST_METHOD']=='POST'){
//it's a POST request, We are good to go...handle the post request.
}else{
//not a POST request, kill it here
echo "error";
die();
}
什么可能导致此问题?我需要在PHP方面进行设置吗?还是新域的PHP版本?请帮忙