gpt4 book ai didi

java - 如何在 Retrofit2 中发布消息?

转载 作者:行者123 更新时间:2023-12-02 11:08:38 25 4
gpt4 key购买 nike

该项目使用网络服务器运行。当用户单击按钮时,它应该在 EditText 内发布消息。我使用 Retrofit2 来实现。当我单击按钮时,程序已停止。

ApiInterface.java

@POST("api/EmergencyNotification/SendNotification")
Call<SendMessageModel>postMessage(@Header("Authorization") String token,
// @Field(("PhotoRequest")) String photoRequest,
// @Field(("Location")) String location,
@Field(("MessageBody")) String messageBody);
// @Field(("AnswerValue")) String answerValue);

在按钮 OnClick 中,此函数运行:

protected void postMessage(){
startProgress();
String authorization = SessionHelper.getCustomerTokenWithBearer();
// Loc = lattitude + longitude;
Call<SendMessageModel> call = ApiService.apiInterface.postMessage(authorization,
mesaj.getText().toString().trim());

call.enqueue(new Callback<SendMessageModel>() {
@Override
public void onResponse(Call<SendMessageModel> call, Response<SendMessageModel> response) {
stopProgress();

if (response.isSuccessful()){

if (response.body() != null){
DialogHelper.showDialogWithOneButton("",response.body().getData());
}
}
else {
ApiErrorUtils.parseError(response);
}
}

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

stopProgress();
DialogHelper.showFailedDialog();
}
});
}

最佳答案

好的。我现在解决了。我的 api url 错误,我添加了新的 @Multipart@Part 而不是 @Field

@POST("api/EmergencyNotification/SendMessage")
Call<SendMessageModel>postMessage(@Header("Authorization") String token,

@Part(("MessageBody")) String messageBody);

关于java - 如何在 Retrofit2 中发布消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50743637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com