gpt4 book ai didi

android - Firebase 性能监控 React Native 集成

转载 作者:行者123 更新时间:2023-11-28 23:20:58 30 4
gpt4 key购买 nike

我在我的 React Native 应用程序上安装了 Firebase 性能监控并成功整合。在我想跟踪我的网络请求性能并作为文档完成之后。

const trackRequest = async (url,method) => {
// Define the network metric
const metric = await perf().newHttpMetric(url, method);

// Define meta details
metric.putAttribute('testAttr', 'testValue');

// Perform a HTTP request and provide response information
const response = await fetch(url);
metric.setHttpResponseCode(response.status);
metric.setResponseContentType(response.headers.get('Content-Type'));
metric.setResponsePayloadSize(response.headers.get('Content-Length'));

// Stop the trace
await metric.stop();

return response.json();
};

我使用文档中的这个函数并在每次网络请求时调用它

fetch("www.example.com")
trackRequest("www.example.com","GET")

谁能解释一下我做错了什么?

最佳答案

您似乎没有正确使用 API。 documentation 中似乎有一个很好的例子.在调用 stop() 之前,您需要对指标调用 start()。此外,该示例表明您应该在每个方法调用上使用 await,但我真的不知道是否有必要。

const trackRequest = async (url,method) => {
const metric = await perf().newHttpMetric(url, method);

// !!! Don't forget to call start()
await metric.start();

await metric.putAttribute('testAttr', 'testValue');

const response = await fetch(url);

await metric.setHttpResponseCode(response.status);
await metric.setResponseContentType(response.headers.get('Content-Type'));
await metric.setResponsePayloadSize(response.headers.get('Content-Length'));

// Stop the trace only after you started it
await metric.stop();

return response.json();
};

关于android - Firebase 性能监控 React Native 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59678494/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com