Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.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 无法在安卓系统的改型2中以json格式发送数据_Android_Json_Retrofit2 - Fatal编程技术网

Android 无法在安卓系统的改型2中以json格式发送数据

Android 无法在安卓系统的改型2中以json格式发送数据,android,json,retrofit2,Android,Json,Retrofit2,我无法在改型中以行json格式发送数据 我将改装版1.9迁移到2。在Retrfit1.9中,我可以使用HashMap发送原始json,但在改型2中,我使用HashMap发送,但无法将数据作为json发送。 所以我用pojo来代替 api生成试图获取非对象属性的日志,因此我无法在json行中传递数据 我刚刚在错误日志中看到了我的服务器详细信息,我的请求自动转换为GET。我在POST中使用Reformation2、Reformation1.9和其他异步任务传递数据。我不知道为什么我的服务器被当作GE

我无法在改型中以行json格式发送数据

我将改装版1.9迁移到2。在Retrfit1.9中,我可以使用HashMap发送原始json,但在改型2中,我使用HashMap发送,但无法将数据作为json发送。 所以我用pojo来代替

api生成试图获取非对象属性的日志,因此我无法在json行中传递数据

我刚刚在错误日志中看到了我的服务器详细信息,我的请求自动转换为GET。我在POST中使用Reformation2、Reformation1.9和其他异步任务传递数据。我不知道为什么我的服务器被当作GET。 从邮递员那里,一切正常

任何帮助都会对我有用。 谢谢

这是我的密码

我的pojo课程需要申请

  public class RegisterdUserData {

@SerializedName("userEmail")
@Expose
private String userEmail;
@SerializedName("userName")
@Expose
private String userName;
@SerializedName("firstName")
@Expose
private String firstName;
@SerializedName("lastName")
@Expose
private String lastName;
@SerializedName("userPassword")
@Expose
private String userPassword;
@SerializedName("userRole")
@Expose
private String userRole;

public String getUserEmail() {
    return userEmail;
}

public void setUserEmail(String userEmail) {
    this.userEmail = userEmail;
}

public String getUserName() {
    return userName;
}

public void setUserName(String userName) {
    this.userName = userName;
}

public String getFirstName() {
    return firstName;
}

public void setFirstName(String firstName) {
    this.firstName = firstName;
}

public String getLastName() {
    return lastName;
}

public void setLastName(String lastName) {
    this.lastName = lastName;
}

public String getUserPassword() {
    return userPassword;
}

public void setUserPassword(String userPassword) {
    this.userPassword = userPassword;
}

public String getUserRole() {
    return userRole;
}

public void setUserRole(String userRole) {
    this.userRole = userRole;
}
请求

@Headers("Content-Type: application/json")
@POST("/api/CreateUser.php")
Call<AppUserData> CreateUser(@Body RegisterdUserData registerdUserData); 
@Headers(“内容类型:application/json”)
@POST(“/api/CreateUser.php”)
调用CreateUser(@Body RegisterdUserData RegisterdUserData);
我的电话

 private void CreateUser(String userEmail, String firstName, String lasName, String userName, String userPassword, String userRole) {

    RegisterdUserData registerdUserData = new RegisterdUserData();
    registerdUserData.setFirstName(firstName);
    registerdUserData.setLastName(lasName);
    registerdUserData.setUserEmail(userEmail);
    registerdUserData.setUserName(userName);
    registerdUserData.setUserPassword(userPassword);
    registerdUserData.setUserRole(userRole);
    util.http.CreateUser(registerdUserData).enqueue(new Callback<AppUserData>() {
        @Override
        public void onResponse(Call<AppUserData> call, Response<AppUserData> response) {
            util.log(TAG, "" + response);
        }

        @Override
        public void onFailure(Call<AppUserData> call, Throwable t) {
            util.log(TAG, "" + t);
        }
    });
}
private void CreateUser(字符串userEmail、字符串firstName、字符串lasName、字符串userName、字符串userPassword、字符串userRole){
RegisterdUserData RegisterdUserData=新的RegisterdUserData();
registerdUserData.setFirstName(firstName);
registerdUserData.setLastName(lasName);
registerdUserData.setUserEmail(userEmail);
registerdUserData.setUserName(用户名);
registerdUserData.setUserPassword(userPassword);
registerdUserData.setUserRole(userRole);
util.http.CreateUser(registerdUserData).enqueue(新回调(){
@凌驾
公共void onResponse(调用、响应){
util.log(标记“”+响应);
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
util.log(标记“”+t);
}
});
}

我建议您以
Map

就你而言:

Map<String,Object> requestBody = new HashMap()<>;
requestBody.put("userInfo", registerdUserData);

如果您有任何疑问,请发表评论。

问题在于www。如果我正在删除它,那么它就可以正常工作。我不知道为什么。但是它帮助了我。
感谢您的回复@Manikanta@AshutoshSaga

同样的错误。我正在为addConverterFactory使用gson。这和这个错误有关系吗?只是尝试一下JacksonConvertorFactory。并将其映射为一个值得使用的请求体!!。尝试将
@POST(“/api/CreateUser.php”)
更改为
@POST(“api/CreateUser.php”)
,这没有帮助@阿什图什萨加尔
@Headers("Content-Type: application/json")
@POST("/api/CreateUser.php")
Call<AppUserData> CreateUser(@Body Map<String,Object> registerdUserData); 
Retrofit retrofit = new Retrofit.Builder()
                .baseUrl(baseUrl)
                .addConverterFactory(JacksonConverterFactory.create())
                .client(client)
                .build();