作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想在我的应用程序中测试文件上传。上传本身的处理方式如 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/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!