在之前的问题 (react-native upload pictures on android) 中描述了带有参数“FormData”的请求,但是我请求了没有数据的 GET 请求并得到了相同的消息!
react-native app with ProGuard enabled = true
应用在第一次请求时崩溃。
06-16 14:00:30.971: E/AndroidRuntime(14321): java.lang.IllegalStateException: Multipart body must have at least one part.
06-16 14:00:30.971: E/AndroidRuntime(14321): at okhttp3.MultipartBody$Builder.build(SourceFile:327)
06-16 14:00:30.971: E/AndroidRuntime(14321): at com.facebook.react.modules.network.NetworkingModule.sendRequest(SourceFile:309)
06-16 14:00:30.971: E/AndroidRuntime(14321): at java.lang.reflect.Method.invoke(Native Method)
06-16 14:00:30.971: E/AndroidRuntime(14321): at java.lang.reflect.Method.invoke(Method.java:372)
06-16 14:00:30.971: E/AndroidRuntime(14321): at com.facebook.react.bridge.BaseJavaModule$b.a(SourceFile:345)
06-16 14:00:30.971: E/AndroidRuntime(14321): at com.facebook.react.cxxbridge.JavaModuleWrapper.invoke(SourceFile:136)
06-16 14:00:30.971: E/AndroidRuntime(14321): at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
06-16 14:00:30.971: E/AndroidRuntime(14321): at android.os.Handler.handleCallback(Handler.java:739)
06-16 14:00:30.971: E/AndroidRuntime(14321): at android.os.Handler.dispatchMessage(Handler.java:95)
06-16 14:00:30.971: E/AndroidRuntime(14321): at com.facebook.react.bridge.queue.a.dispatchMessage(SourceFile:31)
06-16 14:00:30.971: E/AndroidRuntime(14321): at android.os.Looper.loop(Looper.java:135)
06-16 14:00:30.971: E/AndroidRuntime(14321): at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(SourceFile:196)
06-16 14:00:30.971: E/AndroidRuntime(14321): at java.lang.Thread.run(Thread.java:818)
更新:这是错误的部分,其中 this._query
是空对象:
let fd = new FormData;
forEach(this._query, (value, key) => {
fd.append(key, value)
});
params.body = fd;
最佳答案
Multipart body must have at least one part. This message is about wrong arguments for
fetch
function passed from JavaScript code to alternative function in Java.
我试图将 body 传递为空 FormData , 所以关于 body 的消息没有任何部分。
关于android - "Multipart body must have at least one part",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44591453/