gpt4 book ai didi

java - 测试 AJAX 文件上传

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:13:37 26 4
gpt4 key购买 nike

我想在我的应用程序中测试文件上传。上传本身的处理方式如 http://www.playframework.org/documentation/2.0/JavaFileUpload 上的直接文件上传部分所述。 .

我正在使用最新的 Play20 版本并按照描述构建它 here .

我当前的代码看起来像这样,但显然缺少向请求添加测试文件的部分:

测试.java

FakeRequest request = fakeRequest(POST, "/measurement/123/file");
// how to append test file to this request?
Result result = routeAndCall(request);
assertOK(result);

Controller.java

public static uploadFile() {
RequestBody body = request().body();
if (body != null) {
RawBuffer rawBuffer = body.asRaw();
if (rawBuffer != null) {
File uploadedFile = rawBuffer.asFile();
// ...
}
}
return ok();
}

最佳答案

我的 Play 2 Java 文件上传测试解决方案是创建一个扩展 FakeRequest 的 UploadFakeRequest。在类里面,我有自己的 withRawBody 方法,其中包含类似的东西:

 RawBuffer raw = new RawBuffer(1000, data.getBytes()); // No clue what is the correct value here...
AnyContentAsRaw content = new AnyContentAsRaw(raw);
fake = new play.api.test.FakeRequest(POST, fake.path(), new play.api.test.FakeHeaders(Scala.asScala(map)), content, "127.0.0.1");

关于java - 测试 AJAX 文件上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10192465/

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