首页 > 解决方案 > 如何在 Angular 4 服务中使用包含“/”的字符串参数发送获取请求?

问题描述

我正在使用 angular 4 和 http 服务,我想调用一个服务并传递一个字符串以返回一个 JSON 值。我的字符串是“97/422/1883”,我的服务代码是:

getIncomingRelatedById(number) {
this.createAuthenticationHeaders();
return this.http.get(this.domain + '/mail/getIncomingRelatedById/' + number, this.options).map(res => res.json());

但是当我运行代码时,我得到以下错误:

http://localhost:3000/mail/getIncomingRelatedById/97/422/1883 404 (Not Found)

我现在如何发送我的请求?

更新:

在服务器端我有这个:

    router.get('/getRelatedById/:id', (req, res) => {
    pool.connect((err, client, done) => {
      if (err) {
        res.json({
          success: false,
          message: err
        });
      } else {
        client.query('select * from get_related_mail($1)', [req.params.id], 
         (err, mail) => {
          done();
          if (err) {
            console.log(err);
            res.json({
              success: false,
              message: err
            });
          } else {
          res.json({
            success: true,
            mail: mail,
          });
        });
      }
    });
  });

标签: angularurlparametershttpservice

解决方案


我认为这个链接很有帮助 https://www.w3schools.com/tags/ref_urlencode.asp

这个喜欢有所有的字符和值

对于你的问题,这是你的性格 '/'==>'%2F'


推荐阅读