node.js - 如何在 Node.js 中为请求编码任意字符串?

标签 node.js encoding utf-8

我有这样一个字符串:“abcde李”。它可以是任何非拉丁字符的字符串。

我想对其进行编码以在请求中使用,因此它将是“abcde %E6%9D%8E”并且可用于 http.request。

我试过这个:

str.toString("utf-8");

var buffer = new Buffer(str);
str = buffer.toString('utf-8');

但它们都不起作用。处理这个问题的正确方法是什么?

最佳答案

该字符串已经是 UTF-8。看起来您正试图将其转义以用于 HTTP query string ,所以试试这个:

var qs = require('querystring');
qs.escape('abcde 李'); // => 'abcde%20%E6%9D%8E'

关于node.js - 如何在 Node.js 中为请求编码任意字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9984212/

相关文章:

javascript - Node.js 生成的 csv 文件显示英镑符号 (£)

java - 如何从以 latin1 编码的结果集中以 UTF-8 编码字符串

encoding - "encoding-agnostic"的定义是什么?

c - Unicode 转义序列与十六进制值

node.js - Cloud Functions for Firebase 错误处理

node.js - 如何将预处理器绑定(bind)到 babel-register,以便在 babel 启动之前修改文件

javascript - Heroku 创建命令产生 "ENOENT"错误

java - OutputStreamWriter java无法存储到字符串中

c++ - 从 Windows 资源 (RC) 文件存储和检索 UTF-8 字符串

javascript - 此 package.json 文件需要更改哪些内容才能使用 npm 0.3.0?