Javascript 如何使用fetch而不是request?
我正在制作react native应用程序,显示我们学校的信息。我在谷歌电子表格中写下了信息,并让我的应用程序按要求抓取信息Javascript 如何使用fetch而不是request?,javascript,node.js,reactjs,react-native,fetch,Javascript,Node.js,Reactjs,React Native,Fetch,我正在制作react native应用程序,显示我们学校的信息。我在谷歌电子表格中写下了信息,并让我的应用程序按要求抓取信息 var date = new Date() var year = date.getFullYear() var month = new String(date.getMonth() + 1) var day = new String(date.getDate()) if (month.length == 1) { month = "0" + mo
var date = new Date()
var year = date.getFullYear()
var month = new String(date.getMonth() + 1)
var day = new String(date.getDate())
if (month.length == 1) {
month = "0" + month
}
if (day.length == 1) {
day = "0" + day
}
const today = (year + month + day)
// arrays to save each information
var breakfast = [];
var lunch = [];
var dinner = [];
var quote = [];
var request = require('request');
//get information from google spreadsheet
request('https://script.google.com/macros/s/AKfycbzwGjC5GU3RK448VeJtGm6xXpf_UzFgps3zi5bv9gfQcfsOervJ6RYinWFi-UzGbNMg/exec?sheetName=%EC%8B%9C%ED%8A%B81', function (err, res, body) {
// get information in body tag by json form
var dataArray = JSON.parse(body)
for (let i = 0; i < dataArray.data.length; i++) {
// find today's information
if (String(dataArray.data[i].gdate) == today) {
breakfast = dataArray.data[i].gbreakfast.split(',')
console.log(breakfast)
lunch = dataArray.data[i].glunch.split(',')
dinner = dataArray.data[i].gdinner.split(',')
quote = "\"" + dataArray.data[i].gquote + "\""
break
}
}
});
出现上述错误。我想这是因为请求,所以我想用fetch而不是request来更改代码。我该怎么办呢?Fetch api非常容易使用,一些文档可以让您随时准备使用 至于您的实际代码,我做了一些更新,以便您可以测试fetch api,如下所示:
const list=async()=>{
变量日期=新日期()
var year=date.getFullYear()
var month=新字符串(date.getMonth()+1)
var day=新字符串(date.getDate())
如果(月长===1){
月份=“0”+月份
}
如果(day.length==1){
day=“0”+天
}
今日施工=(年+月+日)
//数组来保存每个信息
让早餐=[];
让午餐=[];
让我们共进晚餐吧;
报价=[];
试一试{
//从谷歌电子表格获取信息
const response=等待获取('https://script.google.com/macros/s/AKfycbzwGjC5GU3RK448VeJtGm6xXpf_UzFgps3zi5bv9gfQcfsOervJ6RYinWFi-UzGbNMg/exec?sheetName=%EC%8B%9C%ED%8A%B81')
if(response.ok){
var dataArray=await response.json()
for(设i=0;i list()
好主意,因为请求的维护者。如果要使用获取
,则。只要你粗略地看一眼就很容易了。解决了问题!多谢各位
Unable to resolve module crypto from C:\Users\munge\SEMA\node_modules\request\lib\helpers.js: crypto could not be found within the project or in these directories:
node_modules\request\node_modules
node_modules
..\node_modules
If you are sure the module exists, try these steps:
1. Clear watchman watches: watchman watch-del-all
2. Delete node_modules and run yarn install
3. Reset Metro's cache: yarn start --reset-cache
4. Remove the cache: rm -rf /tmp/metro-*
2 |
3 | var jsonSafeStringify = require('json-stringify-safe')
> 4 | var crypto = require('crypto')
| ^
5 | var Buffer = require('safe-buffer').Buffer
6 |
7 | var defer = typeof setImmediate === 'undefined'