如何解决Expo - 分享点击即可打开应用的链接
我目前正在开发一个 Expo 应用程序,人们可以在其中发布帖子并与他们在 Whatsapp、Facebook 上的朋友分享......
我面临的问题是我不知道如何创建一个链接,当点击AND时会打开应用程序,这要求用户登录应用程序。
我使用的服务器是用 NodeJS 制作的,并且有一个中间件来检查用户是否登录以及获取特定帖子的路径。见下面的代码:
//Middleware 'checkLoggedIn' that checks if the user is logged in
modules.exports = (req,res,next) => {
const { authorization } = req.headers;
if(!authorization) //Handle unauthorized
const token = authorization.replace('Bearer ','')
jwt.verify(token,SECRET,(err,payload) => {
if(err) //Handle error
else {
//Find the user and save it in req.user
}
})
}
//Get specific post by id
Router.route('/:id').get(checkLoggedIn,(req,res) => {
//Find post in Post model where id matches req.params.id
})
在客户端,当用户单击共享按钮时,我不知道要提供哪个链接,因为我在 Expo Linking 文档中看到链接必须具有 exp://
方案。
我目前尝试的是将 exp://app:port
链接直接传递给 Expo Share 库中的 Share.share
方法,但它从不检查用户是否已登录。我也尝试过传递服务器路由http://localhost:PORT/123
其中 123
是帖子的 ID,但它会将我重定向到带有未经授权消息的浏览器。
注意:我可能完全误解了共享链接的原则,并为此提前道歉。
感谢任何可以帮助我的人!如果我不清楚,请随时向我询问更多细节
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。