服务器端或客户端 API 调用?
Server side or Clint side API call?
如果您使用 React.js,拨打 API 电话的最佳方式是什么?例如,如果我试图从 google 本书 API 中获取一些书籍数据,我应该在客户端使用 React.js 还是在服务器端执行此操作。为什么在一侧做比在另一侧做更好?谢谢
你可以这样做。
const express = require('express');
const app = express();
const path = require('path');
const fs = require('fs');
const proxy = require('http-proxy-middleware');
app.use(
'/api',
proxy({
target: 'http://api.books.com',
changeOrigin: true,
ws: true,
pathRewrite: { '^/api': '' },
})
);
const index = fs.readFileSync(path.resolve('./build', 'index.html'), { encoding: 'utf-8' });
app.get('*', (req, res) => {
res.contentType('text/html').send(index);
});
const server = app.listen(3000, function() {
const host = server.address().address;
const port = server.address().port;
console.log('The server is running at http://%s:%s/', host, port);
});
并像这样调用(抛出代理),以免 CORS 出现问题或之后更换服务器。
fetch('/api/get-books')
如果您使用 React.js,拨打 API 电话的最佳方式是什么?例如,如果我试图从 google 本书 API 中获取一些书籍数据,我应该在客户端使用 React.js 还是在服务器端执行此操作。为什么在一侧做比在另一侧做更好?谢谢
你可以这样做。
const express = require('express');
const app = express();
const path = require('path');
const fs = require('fs');
const proxy = require('http-proxy-middleware');
app.use(
'/api',
proxy({
target: 'http://api.books.com',
changeOrigin: true,
ws: true,
pathRewrite: { '^/api': '' },
})
);
const index = fs.readFileSync(path.resolve('./build', 'index.html'), { encoding: 'utf-8' });
app.get('*', (req, res) => {
res.contentType('text/html').send(index);
});
const server = app.listen(3000, function() {
const host = server.address().address;
const port = server.address().port;
console.log('The server is running at http://%s:%s/', host, port);
});
并像这样调用(抛出代理),以免 CORS 出现问题或之后更换服务器。
fetch('/api/get-books')