2017-06-02 151 views
0

在Android中使用Robospice模拟响应是否有可能,因为我需要创建一个演示应用程序,它将在应用程序中的json文件中包含所有响应?我试图使用https://github.com/andrzejchm/RESTMock,但有一些问题,我得到的信息:RESTMock successfully started! url: http://localhost:34163/,没有别的。任何其他想法?Robospice中的模拟响应

+0

你想嘲笑自己的应用程序内的反应,或有一个模拟服务器,如您的应用程序与RESTMock或Wiremock通信? – tprebs

+0

如果它可能在应用程序内部而没有与真实服务器连接,那将会很棒。所以RESTMock是不错的选择,但它不起作用。我在Application类中启动了服务器并添加了'RESTMockServer.whenRequested',但它不起作用 – falsetto

+0

您是否在向RESTMock(http:// localhost:34163)的url发送Robospice请求? – tprebs

回答

0

在您Application类,你可以开始RESTMock:

@Override 
public void onCreate() { 
    super.onCreate(); 
    RESTMockServerStarter.startSync(new AndroidAssetsFileParser(getContext()),new AndroidLogger()); 

    RESTMockServer.whenRequested(pathContains("response")) 
     .thenReturnFile(200, "response.json"); 
} 

这并设置您RESTMock服务器,但没有做任何HTTP请求的呢。您现在需要将RESTMock的服务器url提供给获取数据的方法。例如,如果你使用的改造:

Retrofit retrofit = new Retrofit.Builder() 
      .baseUrl(RESTMockServer.getUrl()) 
      .build(); 

从现在开始,每个请求使用改造应与RESTMock服务器直接沟通,正确抓取您指定的嘲笑作出回应。