发布请求参数未设置

时间:2015-11-30 23:45:43

标签: android python okhttp

我正在从android向python服务器发送POST请求(OKHttp)。

机器人

public static final MediaType JSON
            = MediaType.parse("application/json; charset=utf-8");
String params="name="+Name+"&pass="+Pass;
RequestBody body = RequestBody.create(JSON, params);
Request request=new Request.Builder().url(URL).post(body).build(); //Request{method=POST, url=http://10.XX.XXX.XXX:8080/register, tag=null}
Response res=client.newCall(request).execute();

python服务器

@app.route('/register',methods=["GET","POST"])
def register():
    name=request.args.get('name')
    password=request.args.get('pass')

    print name   #None?
    print password  #None?
    return ''

为什么tag为null,我在设置POST参数时错过了一些观点?

1 个答案:

答案 0 :(得分:0)

参数不是JSON格式。尝试按如下方式构建参数:

JSONObject paramsJson = new JSONObject();
object.put("name", Name);
object.put("pass", Pass);

String params = object.toString();

在JSONException的情况下,您还必须使用try / catch包围。