当前位置: 首页 > 知识库问答 >
问题:

如何使用“内容类型:application/x-www-form-urlencoded”发出Okhttp请求?

况鸿雪
2023-03-14

我有一个api要求在标题中发送以下参数-

内容类型-应用程序/x-www. form-urlencoded

AuthKey-(会话令牌)

以及正文中的以下参数(表单日,即键值对)

storeId-1

类型-产品

类别ID-324

但是每当我点击这个api,我总是得到401(未授权)错误。我已经尝试使用MultipartRequest正文和formBody,我知道这与正文无关(它的头,我需要发送内容类型和AuthKey)。下面是我的代码-

Request.Builder  requestBuilder = new Request.Builder();
requestBuilder.addHeader("Content-Type", "application/x-www-form-urlencoded");
    requestBuilder.addHeader("authKey",AppSharedPref.getTokenMobikul(context));
RequestBody formbody = new FormBody.Builder().add("CategoryId",bodyparms.get(0)).
                        add("type",bodyparms.get(1)).build();
 requestBuilder.post(formbody);

同一个api正在给改造库的响应那么如何使用Okhttp实现这一点。

共有1个答案

尉迟德惠
2023-03-14

这会有帮助吗

FormBody.Builder formBuilder = new FormBody.Builder()
    .add("key", "value");

// add more parameter as follow:
formBuilder.add("mobile", "9999999999");

RequestBody formBody = formBuilder.build();

Request request = new Request.Builder()
            .url("https://www.hittheserver.com")
            .post(formBody)
            .build();
 类似资料: