URL参数问题

AZMark 2018-08-05 10:23:31
小白请教:
这种URL:https://blog.csdn.net/m0_38082783/article/details/78194877
后面的参数78194877
1、前端请求怎么传递这种格式的参数
2、后端如何获取这个参数
...全文
227 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
AZMark 2018-08-14
  • 打赏
  • 举报
回复
理解了,感谢各位回复。
forwardNow 2018-08-09
  • 打赏
  • 举报
回复
路由参数:

* query字符串传参:/api/article?id=1
* path传参:/api/article/:id ,如 /api/article/1

至于前端处理成 API 想要的格式,一般可以用第三方库,比如 axios,
当然,最简单就是直接拼URL字符串啊,或者用模板字符串 `/api/article/${id}`
讨厌走开啦 2018-08-06
  • 打赏
  • 举报
回复
你的第一个问题:前端请求怎么传递这种格式的参数;

首先,这不是由前端随便传递的,而是在模块设计时由模块架构师给出的接口定的;

这样的接口一般会定义成/{{user_id}}/article/details/{{xxx_id}} ,大括号里代表的是url中的可变参数,实际上和//article/details?user_id=xx&xxx_id=xx效果是一样的,好处是隐藏了参数名,可以缩短url的长度,url是有最大长度限制的。

你的第二个问题:后端如何获取这个参数;

同理,接口不是随便定义的,只需要按接口规范解析就可以了,从url中读取传递的参数。
Logerlink 2018-08-06
  • 打赏
  • 举报
回复
引用 2 楼 AZMark 的回复:
这种形式传参与?id=78194877相比有什么区别,优点在哪里?

上面写的那种形式是路由
本质还是一样,只不过他将传入的参数名称隐藏了
相较于以前的更好看也更安全,同时对于搜索引擎比较友好
AZMark 2018-08-05
  • 打赏
  • 举报
回复
这种形式传参与?id=78194877相比有什么区别,优点在哪里?
ambit_tsai-微信 2018-08-05
  • 打赏
  • 举报
回复
这个参数是写在url中的,所以前端传递的时候得将参数附在url中,后端得从url中解析获得参数。

87,917

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧