Angular 2 - 在url中使用hashtag发送值

时间:2017-03-14 04:52:48

标签: javascript angular

在我的申请表中,我有一份注册产品清单。

我正在尝试在网址中发送产品名称。

但是产品名称有##标签,产品名称在服务器上不完整:

前端

var product = "PLASTIC #1JQ-M 1CV T-PLAS"
return this._http.get(Config.URL_SITE + 'list/productLen?product='+product)...

后端

router.get('/productLen', function(req, res, next) {
  var productName= req.query.product;
  console.log(productName) //PLASTIC
...

如何使productName变量获得全名? "PLASTIC #1JQ-M 1CV T-PLAS"

1 个答案:

答案 0 :(得分:3)

在将产品名称添加到网址之前,您应该使用encodeURIComponent()功能。

var product = "PLASTIC #1JQ-M 1CV T-PLAS"
return this._http.get(Config.URL_SITE + 'list/productLen?product=' + encodeURIComponent(product))...

浏览器Why the hash part of the URL is not in the server side?删除哈希后的所有内容。

还有其他解决方案:How to get Url Hash (#) from server side,但它们主要是如何在服务器上检索哈希值。