ReactNativetofirestore:Firestore(8.2.1):ConnectionWebChanneltransporterrored
我创建了简单的 React Native 屏幕,可以将数据存储到 Firestore。我试过下面的代码,但它没有工作,而不是抛出一些错误。任何人都可以帮助我吗?
我的代码:
应用程序.js
import React, { Component } from 'react';
import {StyleSheet,Text,View,TextInput,Button,TouchableHighlight} from 'react-native';
import firebase from 'firebase';
import firestore from '@react-native-firebase/firestore';
const firebaseConfig = {
apiKey: "*********************",
authDomain: "test-c78ec.firebaseapp.com",
projectId: "test-c78ec",
storageBucket: "test-c78ec.appspot.com",
messagingSenderId: "106189113329",
appId: "1:106189113329:web:4bf80ec51eba69ab042650",
measurementId: "G-875ZSQLZS4"
};
firebase.initializeApp(firebaseConfig);
export default class App extend components{
check2(){
console.log("level strarted");
firebase
.firestore()
.collection("MyCollection")
.doc("mydoc")
.set({
key: "2",
value: "World",
})
.then((ref) => { console.log(ref);
console.log("sucessssssssssssssss")
});
}
render(){
return(
<View>
<TouchableHighlight style={[styles.buttonContainer, styles.loginButton]} onPress={() => this.check2('login')}>
<Text style={styles.loginText}>Store data</Text>
</TouchableHighlight>
</View>
);
}
}
错误
WARN [2021-01-06T10:27:51.153Z] @firebase/firestore: Firestore (8.2.1): Connection WebChannel transport errored: {"a": {"C": null, "K": [Circular], "a": {"A": 0, "B": [U], "C": true, "F": 45000, "G": false, "I": true,
"J": -1, "K": "IKeNE9pC779MSM5Rj_dnMg", "Ka": 5000, "Ma": false, "Na": false, "Oa": false, "P": 0, "Pa": 2, "Qa": undefined, "R": [Object], "S": 0, "T": 45498, "Ta": 1, "U": true, "Ua": 10000, "V": 4, "X": false, "Y": [Object], "a": null, "b": [zd], "c":
[bc], "f": [Z], "fa": false, "g": [Array], "ga": undefined, "h": null, "ha": "https://firestore.googleapis.com/google.firestore.v1.Firestore/Write/channel", "i": null, "ia": "", "j": null, "ja": 8, "l": null, "m": null, "ma": 12, "na": [U], "o": 3, "oa":
600000, "pa": "ATXNDTEvJ_SpMuY50LXD23HPyh9-AVCM", "qa": -1, "ra": [Ed], "s": null, "u": 0, "v": "gsessionid"}, "b": {"database": "projects/test-c78ec/databases/(default)"}, "c": {"a": [Object], "b": 4, "src": [Circular]}, "f": {"a": [Circular]}, "i": undefined, "j": false, "l": true, "m": true, "o": "https://firestore.googleapis.com/google.firestore.v1.Firestore/Write/channel"}, "defaultPrevented": false, "status": 1, "target": {"C": null, "K": [Circular], "a": {"A": 0, "B": [U], "C": true, "F": 45000, "G": false, "I": true, "J": -1, "K": "IKeNE9pC779MSM5Rj_dnMg", "Ka": 5000, "Ma": false, "Na": false, "Oa": false, "P": 0, "Pa": 2, "Qa": undefined, "R": [Object], "S": 0, "T": 45498, "Ta": 1, "U": true, "Ua": 10000, "V": 4, "X": false, "Y": [Object], "a": null, "b": [zd], "c": [bc], "f": [Z], "fa": false, "g": [Array], "ga": undefined, "h": null, "ha": "https://firestore.googleapis.com/google.firestore.v1.Firestore/Write/channel", "i": null, "ia": "", "j": null, "ja": 8, "l": null, "m": null, "ma": 12, "na": [U], "o": 3, "oa": 600000, "pa": "ATXNDTEvJ_SpMuY50LXD23HPyh9-AVCM", "qa": -1, "ra": [Ed], "s": null, "u": 0, "v": "gsessionid"}, "b": {"database": "projects/test-c78ec/databases/(default)"}, "c": {"a": [Object], "b": 4, "src": [Circular]}, "f": {"a": [Circular]}, "i": undefined, "j": false, "l": true, "m": true, "o": "https://firestore.googleapis.com/google.firestore.v1.Firestore/Write/channel"}, "type": "c"}
预期的:
只需将给定的数据写入 firestore 数据库。
回答
经过大量工作后,我得到了该错误的临时解决方案。解决方案是在 firebase 初始化后添加以下代码。我不知道这是正确的解决方案,但现在工作正常。
firebase.initializeApp(firebaseConfig);
firebase.firestore().settings({ experimentalForceLongPolling: true }); //add this..
THE END
二维码