标签: urlencode

URLEncode - 让它按照我想要的方式工作

我想对电子邮件地址进行 URL 编码。我在w3schools上输入“bmackey@foo.com” 但它没有编码“@”或“.”。我正在使用encodeURI()并且有相同的结果。到底是怎么回事?

至少,我认为它没有编码,因为我在 FireBug Net 选项卡中看到:

GET http://dev:8989/SJMUserManager/Service/Index/bmackey@foo.com

我期待看到

GET http://dev:8989/SJMUserManager/Service/Index/bmackey%40foo%2Ecom

javascript urlencode

1
推荐指数
1
解决办法
6973
查看次数

在 PHP 中将 urlencode 转为小写

在 PHP 中,使用 urlencode() 进行 url 编码时,输出的字符是大写的:

echo urlencode('MyString'.chr(31));
//returns 'MyString%1F'
Run Code Online (Sandbox Code Playgroud)

对于上述示例,我需要让 PHP 返回“MyString%1f”,但不要将字符串的任何其他部分小写。以便与其他平台保持一致。有什么方法可以做到这一点,而不必一次遍历字符串一个字符,计算是否每次都需要更改大小写?

php urlencode lowercase url-encoding

1
推荐指数
1
解决办法
2801
查看次数

servelt 请求参数值包含与号?

我在网址下面。

http://localhost:8080/servlet?user=John&message=hai&hello&recipient=scott
Run Code Online (Sandbox Code Playgroud)

在上面的 url 中,我有 3 个请求参数,如下所示。

user=John
message=hai&hello
recipient=scott
Run Code Online (Sandbox Code Playgroud)

这里的问题在于message请求参数的值。因为这里它的值包含符号 (&)。当我尝试时,我request.getParameter("message")只会得到hai但不会hai&hello。我该如何解决这个问题?

谢谢!

java url urlencode url-parameters

1
推荐指数
1
解决办法
5298
查看次数

使用JavaScript将"%"发送到API

在我们的RESTful API中,我们使用RQL来解析URL-s并从中构建查询.这是一个查询示例:

http://www.example.com/resource?resource.name~=%Some name%

转换为LIKE运营商.

然后,在我们的前端,我们实现了一个搜索字段,其中的更改触发ajax请求:

'http://www.example.com/resource?resource.name~=%' + query + '%'

当然,有一个错误 - 每个与"%"的特殊组合将服务器端转换为字符,导致查询返回没有结果.

怎么解决?

之后我尝试encodeURIComponent了所有的东西,?但它变得更糟,例如resource.name~%3D%25befr%25哪个"befr"作为查询字符串.

我没有其他想法如何解决这个问题.

javascript php ajax urlencode restful-url

1
推荐指数
1
解决办法
50
查看次数

PHP 如何使用 rawurlencode 对所有字符进行编码

我想知道是否有任何“开箱即用”的 php 函数可以对字符串中的所有字符进行编码,而不仅仅是空格。

$str="Encode All Characters Not Only The Spaces In Between";

echo rawurlencode($str);
Run Code Online (Sandbox Code Playgroud)

这返回:

Encode%20All%20Characters%20Not%20Only%20The%20Spaces%20In%20Between
Run Code Online (Sandbox Code Playgroud)

但我想对所有字符串进行编码,而不仅仅是空格。

php string encode urlencode utf-8

1
推荐指数
1
解决办法
850
查看次数

URL 编码单引号字符?

对于URL编码/解码,建议使用TNetEncodingDelphi XE7以上版本。

所以在 Delphi XE8 中我使用这个代码作为例子:

uses
  System.NetEncoding;
...
edtEncodedURL.Text := TNetEncoding.URL.Encode('SetFont(''Arial'',15)');
Run Code Online (Sandbox Code Playgroud)

给出以下结果:

SetFont('宋体'%2C15)

但是,这不会对单引号字符进行编码,正如您从上面的示例中看到的那样。

此外,在W3Schools.com HTML URL Encoding Reference 的“Try It Yourself”部分中,字符串SetFont('Arial',15)被 URL 编码为:

设置字体%28%27Arial%27%2C15%29

那么有没有办法对 Delphi XE8 中的单引号字符进行 URL 编码呢?

delphi urlencode delphi-xe8

1
推荐指数
1
解决办法
4783
查看次数

ISO-8859-1 中的特殊字符编码

\xe2\x80\x93 或 \xe2\x80\x9c 或 \xe2\x82\xac 在 ISO-8859-1 中如何编码?

\n\n

我已参考此文档http://www.ic.unicamp.br/~stolfi/EXPORT/www/ISO-8859-1-Encoding.html但没有找到 \xe2\x80\x93 或 \xe2\ 的任何编码x80\x9c 或 \xe2\x82\xac。

\n

encoding urlencode character-encoding

1
推荐指数
1
解决办法
9311
查看次数

如何在不填充的情况下获取加密数据?

我对 clojure 很陌生。我对 java 及其库函数没有任何经验。我在 clojure 中编写了一个函数,它使用 java.util.Base64/getUrlEncoder 返回 base64 加密数据。我的代码看起来像:

user> (import java.util.Base64)
java.util.Base64
user> (let [encoder (Base64/getUrlEncoder)]
        (String. (.encode encoder (.getBytes "Hello StackOverflow"))))
"SGVsbG8gU3RhY2tPdmVyZmxvdw=="
Run Code Online (Sandbox Code Playgroud)

输出也包含填充(最后两个等号)。我想从我的输出中删除填充https://docs.oracle.com/javase/8/docs/api/java/util/Base64.Encoder.html#withoutPadding--我知道这对解决我的问题很有用,但我不知道如何在 clojure 中使用withoutPadding()函数。我试过这样的事情:

user> (let [encoder (Base64/getUrlEncoder))]
        (doto (java.util.Base64/Encoder (.withoutPadding (String. (.encode encoder (.getBytes "Hello StackOverflow"))))))
Run Code Online (Sandbox Code Playgroud)

但这是错误的。谁能告诉确切的解决方案?谢谢。

java base64 clojure urlencode

1
推荐指数
1
解决办法
2656
查看次数

Nginx - 解码 URL 查询参数并将其作为请求头转发

我需要以user:pass查询参数 (es. http://example.com?BASIC_AUTH=dXNlcjpwYXNz)的形式向 nginx发送一些基本的身份验证凭据 (es. ),并能够以更常见的Authorization: Basic dXNlcjpwYXNz标头形式将它们转发到代理后面的目标服务器。

我已经能够使用正则表达式检索编码的 auth 字符串的值。问题是该值通常可能包含一些需要在 URL 中进行百分比编码的字符。埃斯。user:pass!->?BASIC_AUTH=dXNlcjpwYXNzIQ==变成?BASIC_AUTH=dXNlcjpwYXNzIQ%3D%3D

因此,当我将请求转发到目标服务器时,我最终Authorization: Basic dXNlcjpwYXNzIQ%3D%3D会指定目标服务器将拒绝哪个,并给出 401 Unauthorized。

如何在设置 Authorization 标头之前强制 nginx 解码 auth 字符串?在此先感谢您的帮助。

注意:由于某些特定于应用程序的限制,我无法首先在 Authorization 标头中发送 auth 字符串。

nginx urlencode basic-authentication url-encoding

1
推荐指数
1
解决办法
6128
查看次数

Server.URLEncode 开始用加号 ("+") 而不是百分比 20 ("%20") 替换空白

鉴于这段代码:

<%
    Response.Write Server.URLEncode("a doc file.asp")
%>
Run Code Online (Sandbox Code Playgroud)

它输出一段时间(如 Javascript call encodeURI):

a%20doc%20file.asp
Run Code Online (Sandbox Code Playgroud)

现在,不知为何,我得到:

a+doc+file%2Easp
Run Code Online (Sandbox Code Playgroud)

我不确定我是怎么做到的(可能是文件内容编码为 ANSI/UTF-8)。为什么会发生这种情况,我怎样才能获得 的第一个行为Server.URLEncode,即使用百分比编码?

vbscript urlencode asp-classic

1
推荐指数
1
解决办法
605
查看次数