这是我的代码片段
import { fetch } from 'BlackBerry-Dynamics-for-React-Native-Networking';
async componentDidMount() {
try {
let res = await fetch('http://my-private-url.com',
{
method : 'GET',
headers : {}
});
let response = await res.text();
// let response = await res.json(); // tried this method as well, getting same behaviour
} catch (error) {
console.log('errr-----', error);
}
}
我有时会收到以下错误,有时它工作正常(注意 - 在相同的 API 上,相同的响应):-
Error: The specified blob is invalid
at Object.promiseMethodWrapper [as readAsText] (D:\PE-Code\rester\ds\node_modules\react-native\Libraries\BatchedBridge\NativeModules.js:103)
at EventTarget.readAsText (D:\PE-Code\rester\ds\node_modules\BlackBerry-Dynamics-for-React-Native-Networking\js\FileReader.js:118)
at readBlobAsText (D:\PE-Code\rester\ds\node_modules\BlackBerry-Dynamics-for-React-Native-Networking\js\fetch.js:206)
at Response.Body.text (D:\PE-Code\rester\ds\node_modules\BlackBerry-Dynamics-for-React-Native-Networking\js\fetch.js:300)
at RootDashboard.componentDidMount$ (D:\PE-Code\rester\ds\src\components\dashboards\RootDashboard.js:48)
at tryCatch (D:\PE-Code\rester\ds\node_modules\regenerator-runtime\runtime.js:63)
at Generator.invoke [as _invoke] (D:\PE-Code\rester\ds\node_modules\regenerator-runtime\runtime.js:293)
at Generator.next (D:\PE-Code\rester\ds\node_modules\regenerator-runtime\runtime.js:118)
at tryCatch (D:\PE-Code\rester\ds\node_modules\regenerator-runtime\runtime.js:63)
at invoke (D:\PE-Code\rester\ds\node_modules\regenerator-runtime\runtime.js:154)
你能通过建议我可能做错什么来帮助我吗?
我是否正确使用了fetch
from BlackBerry-Dynamics-for-React-Native-Networking
?
React Native 版本 - 0.63.4,BB Dynamics SDK 版本 - 8.1
有时它工作正常,有时它会出错。
我在加载我的应用程序时发出 3-4 个 API 请求,有时第三个请求失败,有时第一个请求失败并且随机发生。
我的一些发现告诉我我是否得到了成功的回应 -
我们获得成功响应时的 blob 大小(大约 1200)明显大于我们在相同 API、相同响应上获得错误响应(大约 50)时的大小。
当我得到一个成功的响应时,responseURL 是正确的,但是当我没有得到一个成功的响应时,responseURL 是 - “http://10.0.2.2:8081/symbolicate”。
此外,大多数情况下,我在通过 BB 授权屏幕后第一次加载我的应用程序时会收到错误消息。在我刷新我的应用程序后,它大部分时间都可以正常工作。
当我得到成功响应时的 XHR - 成功的响应 XHR
当我收到错误时 XHR - 错误
这些发现有什么帮助吗?