Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用改型从android发送响应阵列_Android_Retrofit - Fatal编程技术网

如何使用改型从android发送响应阵列

如何使用改型从android发送响应阵列,android,retrofit,Android,Retrofit,我正在尝试调用接收响应阵列的web服务。我在android中使用改型发送带有值的哈希映射,但它给我500个内部服务器错误。以下是我的代码: @POST(“/save”) 公众帐户( @人体图数据, 回调(回调)这就是改装2的方法 接口: @POST("/save") Call<JsonElement> CreateAccount(@Body RequestBody requestBody); @POST(“/save”) 调用CreateAccount(@Body Requ

我正在尝试调用接收响应阵列的web服务。我在android中使用改型发送带有值的哈希映射,但它给我500个内部服务器错误。以下是我的代码:
@POST(“/save”)
公众帐户(
@人体图数据,

回调(回调)

这就是改装2的方法

接口:

@POST("/save")
    Call<JsonElement> CreateAccount(@Body RequestBody requestBody);
@POST(“/save”)
调用CreateAccount(@Body RequestBody RequestBody);
请求代码:

//create JsonObject with key-pair values
JsonObject root = new JsonObject();
root.addProperty("key1", "value1");
root.addProperty("key2", "value2");
//get is as string
String resultJson = root.toString();
//parse it to RequestBody type
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), resultJson);
//create adapter
Retrofit restAdapter = new Retrofit.Builder()
        .baseUrl(Constants.ROOT_API_URL)
        .addConverterFactory(GsonConverterFactory.create())
        .build();
IConstructSecureAPI service = restAdapter.create(IConstructSecureAPI.class);

Call<JsonElement> result = service.CreateAccount(requestBody);
result.enqueue(new Callback<JsonElement>() {
    @Override
    public void onResponse(Call<JsonElement> call, retrofit2.Response<JsonElement> response) {
        if(response.isSuccessful()){
            JsonElement jsonElement = response.body();
            JsonObject withResponse = jsonElement.getAsJsonObject();
        }
        else{
            System.out.println(response.message());
        }
    }

    @Override
    public void onFailure(Call<JsonElement> call, Throwable t) {

    }
});
//使用密钥对值创建JsonObject
JsonObject root=新的JsonObject();
root.addProperty(“键1”、“值1”);
root.addProperty(“键2”、“值2”);
//get是字符串
字符串resultJson=root.toString();
//将其解析为RequestBody类型
RequestBody RequestBody=RequestBody.create(MediaType.parse(“application/json”),resultJson);
//创建适配器
Reformation restAdapter=new reformation.Builder()
.baseUrl(常量.ROOT\u API\u URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
IConstructSecureAPI服务=restAdapter.create(IConstructSecureAPI.class);
调用结果=service.CreateAccount(requestBody);
result.enqueue(新回调(){
@凌驾
公共void onResponse(呼叫,改装2.响应){
if(response.issusccessful()){
JsonElement JsonElement=response.body();
JsonObject withResponse=jsonElement.getAsJsonObject();
}
否则{
System.out.println(response.message());
}
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
}
});

什么是响应数组?php中由键值对组成的响应数组您是指关联数组吗?如果是这样,那么您正在寻找一个键值结构,如果映射不起作用,请尝试在JsonObject中填充键,然后将
jsonObj.toString()
发送到服务器,否则您需要获取一个请求示例,说明数据在发送到服务器时应该是什么样的尝试过它也不起作用