Tag: url encoding

Node.js cookie分析器返回编码的字符

我正在使用cookie分析器给用户一个签名的cookie,但我手动解码他们有问题。 服务器用隐藏的hex代码返回cookies(我猜?)。 例: app.use(cookieParser('bar')); … res.cookie('nickname', 'foo', { signed: true }); 然后我有奇怪的%3A字符nickname=s%3Afoo.FHkzIYqqvAuLEKKzpcNGhMjZQ0G88QpHNtxycPd0GFE ,我无法解码 cookieParser.signedCookie('s%3Afoo.FHkzIYqqvAuLEKKzpcNGhMjZQ0G88QpHNtxycPd0GFE', 'bar') 返回相同的string。 当我将%3A更改为:hex编码?)时 cookieParser.signedCookie('s:foo.FHkzIYqqvAuLEKKzpcNGhMjZQ0G88QpHNtxycPd0GFE', 'bar') 我得到了foo – 正确的价值。 有谁知道如何自动处理? 非常感谢您的帮助。

JSON数据最紧凑的URL编码?

前段时间,我看到一个网站,把游戏重放数据编码成unicode字符,以便你可以复制和粘贴地址与朋友分享。 我基本上想做同样的事情 – 我有一些JavaScript对象中的数据,我想把它放到地址栏中。 我知道我可以使用jQuery.param或类似的东西,但我想要一个更紧凑的格式。 原来这对Google来说有点棘手。 大部分search结果都会显示url缩写,这是明显不同的。 我不想在我的数据库中存储一个简短的URL以供以后查找。 所有的数据应该在URL本身。 我可以使用什么编码? algorithm的链接或描述是好的,但对Node / JavaScript的支持会更好。 我只需要支持最新版本的Chrome稳定版,所以我不在乎旧版浏览器是否无法处理unicode。 我想我会把数据放在片段部分( #之后),所以我只需要支持适用于这个片段的任何编码规则。 我认为任何事情都可以,不是吗?

Node.js中的URL组件编码

我想用node.js发送http请求。 我做: http = require('http'); var options = { host: 'www.mainsms.ru', path: '/api/mainsms/message/send?project='+project+'&sender='+sender+'&message='+message+'&recipients='+from+'&sign='+sign }; http.get(options, function(res) { console.log('STATUS: ' + res.statusCode); console.log('HEADERS: ' + JSON.stringify(res.headers)); }).on('error', function(e) { console.log('ERROR: ' + e.message); }); 当我的path是这样的: /api/mainsms/message/send?project=geoMessage&sender=gis&message=tester_response&recipients=79089145***&sign=2c4135e0f84d2c535846db17b1cec3c6 是工作。 但是当message参数包含任何空格时,例如tester response全部中断 并在控制台中,我看到,http使用此url: /api/mainsms/message/send?project=geoMessage&sender=gis&message=tester 如何发送空格。 或者我只是不能在URL中使用空格?