Angular的HttpClient.get方法匹配精确值?
正在学习Angular中,关于HttpClient有点不懂的地方.
in-memory-data.service:
const users=[
{id: 1, url: '/assets/home-carousel/1.bmp', like: false, likecount: 0},
{id: 2, url: '/assets/home-carousel/2.png', like: false, likecount: 0},
{id: 3, url: '/assets/home-carousel/3.jpg', like: false, likecount: 0},
{id: 4, url: '/assets/home-carousel/4.png', like: false, likecount: 0},
{id: 5, url: '/assets/home-carousel/5.png', like: false, likecount: 0},
{id: 6, url: '/assets/home-carousel/5.png', like: false, likecount: 0},
{id: 7, url: '/assets/home-carousel/5.png', like: false, likecount: 0},
{id: 8, url: '/assets/home-carousel/5.png', like: false, likecount: 0},
{id: 9, url: '/assets/home-carousel/5.png', like: false, likecount: 0},
{id: 1, username: 'admin', password: 'admin', email: 'email@email.com', birthday: '19970916', exist: 'boolean', }
];
return {users};
这里面有一条这样的数据.
我想在this.http.get(api/users/?username=admin)
的时候才会返回这条数据,但是我现在即使是请求为this.http.get('api/users/?username=min')
的时候依然会返回这条数据.所以我想要的是能不能实现username
的精确查找?
在试错的时候又发现了一个问题,如果请求是this.http.get<any[]>('api/users/?username=e')
或者其他的啥字符的时候,为什么就算是那些没有username这个属性的json对象也会被返回过来啊,真特么蛋疼啊..
返回值为:
[{"id":1,"url":"/assets/home-carousel/1.bmp","like":false,"likecount":0},{"id":2,"url":"/assets/home-carousel/2.png","like":false,"likecount":0},{"id":3,"url":"/assets/home-carousel/3.jpg","like":false,"likecount":0},{"id":4,"url":"/assets/home-carousel/4.png","like":false,"likecount":0},{"id":5,"url":"/assets/home-carousel/5.png","like":false,"likecount":0},{"id":6,"url":"/assets/home-carousel/5.png","like":false,"likecount":0},{"id":7,"url":"/assets/home-carousel/5.png","like":false,"likecount":0},{"id":8,"url":"/assets/home-carousel/5.png","like":false,"likecount":0},{"id":9,"url":"/assets/home-carousel/5.png","like":false,"likecount":0},{"id":10,"url":"/assets/home-carousel/5.png","like":false,"likecount":0},{"id":11,"url":"/assets/home-carousel/5.png","like":false,"likecount":0},{"id":12,"url":"/assets/home-carousel/5.png","like":false,"likecount":0},{"id":13,"url":"/assets/home-carousel/5.png","like":false,"likecount":0},{"id":1,"username":"admin","password":"admin","email":"email@email.com","birthday":"19970916","exist":"boolean"}]
我也看了官方api文档了,好像没说有这回事,倒是能this.http.get<any[]>('api/users/id')
,但是这样的话岂不是要改变数据库的结构了?因为他好像只能按照第一个进行匹配啊?是不是要从后台得到一个username开头的数组才行啊?
还有一个问题就是使用http.get<any[]>(url)
的时候是从后台进行处理,访问了后台的/user/?username=xxx&id=xxx
那么在后台是不是/user
的这个地方接受了请求,然后后面的参数作为请求体啊?
新手小白,希望大佬们能给解答一下!感激不尽!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论