javascript - Angular 2 - 在 url 中发送带有标签的值

标签 javascript angular

在我的应用程序中,我有一个已注册产品的列表。

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

但是产品名称带有 # 主题标签并且产品名称到达服务器时不完整:

前端

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变量接收全名? “塑料#1JQ-M 1CV T-PLAS”

最佳答案

你应该使用 encodeURIComponent()将产品名称添加到 URL 之前的功能。

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 , 但它们主要是如何在服务器上检索一般的散列。

关于javascript - Angular 2 - 在 url 中发送带有标签的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42777973/

相关文章:

angular - 在子目录中运行 Angular2

在 Angular2 服务中多次发出 Http 请求

javascript - 如何让 div 粘在另一个元素上

javascript - 有什么方法可以从浏览器运行服务器或点对点?

javascript - 如何使用javascript随机排序两个同步列表?

javascript - 使用对象属性作为 "delimiter"的对象数组 block

angular - 未捕获( promise ): TypeError: Cannot read property 'registerControl' of null

javascript - 将数组名称转换为字符串

javascript - 如何在mat-checkbox angular 5中实现全选

angular - 无法在单元测试用例中调用@HostListener方法