首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用okhttp进行本地测试

如何使用okhttp进行本地测试
EN

Stack Overflow用户
提问于 2016-10-05 15:04:45
回答 2查看 6.5K关注 0票数 3

我正在学习okhttp,我想在我的电脑或android设备中使用本地json文件进行测试。但是我不知道如何以url字符串的形式访问本地文件来调用函数。如下所示:

代码语言:javascript
运行
复制
File sdcard = Environment.getExternalStorageDirectory();
File testJson = new File(sdcard, "test.json");
HttpUtils.HttpGet(testJson., mCallback);

public class HttpUtils {
    private static final String TAG = "HttpUtils";

    private static final OkHttpClient mClient = new OkHttpClient();

    public static void HttpGet(String url, Callback callback) {
        //创建一个Request
        final Request request = new Request.Builder()
                .url(url)
                .build();
        //创建一个Call
        Call call = mClient.newCall(request);
        //请求加入调度
        call.enqueue(callback);
    }
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-10-05 15:34:38

您可以使用MockWebServer为从文件加载的内容提供服务。

https://github.com/square/okhttp/tree/master/mockwebserver

代码语言:javascript
运行
复制
  MockWebServer server = new MockWebServer();

  // Schedule some responses.
  server.enqueue(new MockResponse().setBody("hello, world!"));
  server.enqueue(new MockResponse().setBody("sup, bra?"));
  server.enqueue(new MockResponse().setBody("yo dog"));

  // Start the server.
  server.start();

  // Ask the server for its URL. You'll need this to make HTTP requests.
  HttpUrl baseUrl = server.url("/v1/chat/");
票数 9
EN

Stack Overflow用户

发布于 2016-10-05 15:06:51

那么,您必须通过一些接口抽象您的http客户机,并创建两个实现--一个使用OkHTTP,另一个使用读取文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39877611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档