简体   繁体   English

从Android删除所有上下文Dialogflow吗?

[英]Delete all contexts Dialogflow from Android?

Base URL : https://api.dialogflow.com/v1/ 基本网址: https//api.dialogflow.com/v1/

DELETE ' https://api.dialogflow.com/v1/contexts?sessionId=12345 ' 删除' https://api.dialogflow.com/v1/contexts?sessionId=12345 '

Headers: Authorization: Bearer YOUR_CLIENT_ACCESS_TOKEN Content-Type: application/json 标头:授权:承载YOUR_CLIENT_ACCESS_TOKEN内容类型:application / json

I'm using retrofit 2 and I want to make a delete request against Dialogflow. 我正在使用改造2,并且想对Dialogflow发出删除请求。 I want to delete all contexts. 我要删除所有上下文。

This is what done so far : 到目前为止,这是完成的操作:

@DELETE("contexts?sessionId=12345") Call<Void>deletDialogflow(@Header("Content-Type")String content_type, @Header("Authorization")String auth);

And in api call. 并在api中调用。

private void deleteContextDialogFlow(){

    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl(DialogflowService.BASE_URL_DIALOGFLOW)
            .addConverterFactory(GsonConverterFactory.create())
            .build();

    DialogflowService service = retrofit.create(DialogflowService.class);

    Call call = service.deletDialogflow("application/json; charset=utf-8", DialogflowService.BEARER + DialogflowService.TOKEN_DIALOGFLOW);


   call.enqueue(new Callback() {
       @Override
       public void onResponse(Call call, Response response) {

           Log.e("Successful Delete", "" + response.body().toString());

       }

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

           Log.e("UnSuccessful Delete", "" + t.getMessage());


       }
   });



}

I have not got the result I want. 我没有想要的结果。 That is, all contexts disappear. 也就是说,所有上下文都消失了。

I did test below code working fine, look at this. 我做了下面的代码测试工作正常,看看这个。 看这个

Please take a look in my code carefully : 请仔细查看我的代码:

DialogflowService.java DialogflowService.java

@Headers("Content-Type:application/json")
@DELETE("contexts?sessionId=12345")
Call<String> deletDialogflow(@Header("Authorization") String auth);

deleteContextDialogFlow() deleteContextDialogFlow()

Call<String> call = service.deletDialogflow(DialogflowService.BEARER+DialogflowService.TOKEN_DIALOGFLOW);
 call.enqueue(new Callback<String>() {
   @Override
   public void onResponse(Call<String> call, Response<String> response) {
      if (response.isSuccessful()) {
        Log.e("Successful Delete", "" + response.body().toString());
        }
        else{
        Log.e("Fail Delete", "" + response.errorBody().string());
        }

   }

   @Override
   public void onFailure(Call<String> call, Throwable t) {
       Log.e("UnSuccessful Delete", "" + t.getMessage());
   }
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM