繁体   English   中英

使用Firebase存储发送网络请求PATCH时出错

[英]error sending network request PATCH with Firebase Storage

尝试使用Firebase Storage更新文件的元数据时收到此错误。

发送网络请求补丁时出错https://firebasestorage.googleapis.com/v0/b/rootssahaj.appspot.com/o/notice%2Fthumbs java.net.ProtocolException:未知方法“ PATCH”; 必须是[OPTIONS,GET,HEAD,POST,PUT,DELETE,TRACE]中的一种

10-16 12:31:04.819 2043-3160/com.rana.sahaj.myyu W/ExponenentialBackoff:   network unavailable, sleeping.
10-16 12:31:04.819 2043-3160/com.rana.sahaj.myyu W/NetworkRequest: error sending network request PATCH https://firebasestorage.googleapis.com/v0/b/rootssahaj.appspot.com/o/notice%2Fthumbs
                                                               java.net.ProtocolException: Unknown method 'PATCH'; must be one of [OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE]
                                                                   at java.net.HttpURLConnection.setRequestMethod(HttpURLConnection.java:685)
                                                                   at com.android.okhttp.internal.http.HttpsURLConnectionImpl.setRequestMethod(HttpsURLConnectionImpl.java:144)
                                                                   at brq.b(:com.google.android.gms.DynamiteModulesC:242)
                                                                   at brq.a(:com.google.android.gms.DynamiteModulesC:269)
                                                                   at brk.onTransact(:com.google.android.gms.DynamiteModulesC:53)
                                                                   at android.os.Binder.transact(Binder.java:361)
                                                                   at com.google.android.gms.internal.zzans$zza$zza.zzuj(Unknown Source)
                                                                   at com.google.android.gms.internal.zzanv.zza(Unknown Source)
                                                                   at com.google.android.gms.internal.zzanm.zza(Unknown Source)
                                                                   at com.google.android.gms.internal.zzanm.zzd(Unknown Source)
                                                                   at com.google.firebase.storage.zzf.run(Unknown Source)
                                                                   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
                                                                   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
                                                                   at     java.lang.Thread.run(Thread.java:841)

更新元数据的代码是:

FirebaseStorage storage = FirebaseStorage.getInstance();
    final StorageReference storageRefNonThumbs = storage.getReferenceFromUrl(constants.FIREBASE_STORAGE_URL + "/notice/nonThumbs");
    final StorageReference storageRefThumbs = storage.getReferenceFromUrl(constants.FIREBASE_STORAGE_URL + "/notice/thumbs");

    UploadTask uploadTaskThumb = storageRefThumbs.child(timestamp + EmailPref).putFile(DOCUri);
    final StorageMetadata metadata = new StorageMetadata.Builder()
            .setContentType(DocMiMEType)
            .build();

storageRefThumbs.updateMetadata(metadata).addOnSuccessListener(new OnSuccessListener<StorageMetadata>() {
        @Override
        public void onSuccess(StorageMetadata storageMetadata) {
            // Updated metadata is in storageMetadata
            storageRefNonThumbs.updateMetadata(metadata)
                    .addOnSuccessListener(new OnSuccessListener<StorageMetadata>() {
                        @Override
                        public void onSuccess(StorageMetadata storageMetadata) {
                            // Updated metadata is in storageMetadata
                            //  Uri downloadUrlNonThumb = taskSnapshot.getDownloadUrl();

                            // saveData(editText, null, downloadUrlThumb.toString(), mTime, timestamp, null, null, null, downloadUrlNonThumb.toString());
                            Log.e("SahajLOG98", "Success in MEtaData@@22***");
                        }
                    })
                    .addOnFailureListener(new OnFailureListener() {
                        @Override
                        public void onFailure(@NonNull Exception exception) {
                            // Uh-oh, an error occurred!
                        }
                    });
        }
    })

这是Android版本<= 4.0(Ice Cream Sandwich及更低版本)和Firebase Storage的已知问题。 SDK的未来版本中将提供修复程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM