node.js - 带有 reactjs 和 nodejs 的 Shopify 应用程序没有 nextjs?
问题描述
我正在开发一个 shopify 应用程序,因此 reactjs 处理 UI 部分,node-express 处理 shopify auth 事情。
shopify网站上的教程是
- 节点、反应和 nextjs
- 没有reactjs的节点和表达
我关心的是如何在没有 reactjs 服务器端渲染的情况下使用 nextjs 测试应用程序?
我们知道 node 和 react 运行一个单独的端口,那么我们如何使用 shopify 处理身份验证流程?
我的工作方式是
用户进入应用程序 -> 节点使用 shopify 进行身份验证 -> 如果身份验证成功 -> 显示反应应用程序。
更新:我正在使用 ant design,所以 ant design 的 ssr 会有所帮助。
任何人都请帮助我解决问题。
解决方案
经过一些研究,我得到了一个简单的解决方案,我正在添加给我解决方案的链接。
- React App 在 3000 端口运行
- 节点服务器运行在 3001 端口
在客户端设置代理
package.json
到 localhost:3001{ proxy: "localhost:3001" }
安装
http-proxy-middleware
$ npm install http-proxy-middleware --save $ # or $ yarn add http-proxy-middleware
接下来,创建
src/setupProxy.js
并在其中放置以下内容:
const proxy = require('http-proxy-middleware');
module.exports = function(app) {
app.use(proxy('/api', { target: 'http://localhost:3001/' }));
};`
6. 仅此而已。
如果使用 ngrok 公开您的 localhost,您可能会收到Invalid Host Header
错误消息。这是解决方案。
ngrok http 8080 -host-header="localhost:8080"
ngrok http --host-header=rewrite 8080
https://stackoverflow.com/a/45494621/1445874
这个 2 链接给了我解决方案。
推荐阅读
- git - 有什么方法可以从 fork 中删除文件并在每次在 github 中同步时保持删除状态?
- r - 如何在不删除名为“NA”的值的情况下摆脱 NA
- java - Firestore 按生日日期查询文档,例如仅按日和月查询不包括年份?
- python - 通过读取多个文件读取任一列中的值
- java - 命令消息 - 分类设计问题
- php - Xdebug 连接不适用于 PhpStorm 和 Docker
- xslt - 如何根据其他节点的属性值删除 XML 节点
- postgresql - 将 jira 用户转移到在 docker 中运行的 jira-crowd-postgresql 容器中的人群
- apache-kafka - 如何使用 CLI/命令行中的用户名和密码保护 kafka 主题?
- java - 按条目的递减顺序生成列表的笛卡尔积(条目为正数,列表已排序)