标签: urlencode

如何在Windows Mobile上解码url编码字符串?

我从服务器收到了一个url编码字符串,例如http%3a%2f%2fstatic.csbew.com%2f%2fcreative%2fpd_test_pptv%2f320x60.png

我想将它解码为普通的url字符串.我发现这个方法,但这不适用于紧凑的框架.

string url = System.Web.HttpUtility.UrlDecode(strURL, Encoding.GetEncoding("GB2312"));
Run Code Online (Sandbox Code Playgroud)

有关如何解码字符串的任何想法?

c# urlencode windows-mobile

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

网页中的亚洲 URL 或英文 slug

这是一个艰难的:

我正在开发一个大部分内容都是日语的网站。

但考虑这个网址:

http://www.stackoverflow.com/??/????URL?????

大多数 URL 解析器,包括 stackoverflow 的,不知道在哪里分隔包含日语的 URL。不好。

我还没有检查过其他浏览器,但谷歌浏览器会用日语显示 URL 解码的日语 URL——当你复制 URL 时,它会对其进行 URL 编码:

http://www.stackoverflow.com/%E8%B3%AA%E5%95%8F/%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%81%AEURL%E3% 81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8B

这是正确的做法,但并不是最友好的。所以,我想,我会让内容提供者只输入简短的英语 slug,就像这样:

http://www.stackoverflow.com/questions/what-to-do-with-japanese-urls

惊人的。但这有两个问题:

  1. 大多数提供内容的人都会说一点英语——但他们说的英语比英语更多。所以他们很可能会写一些类似“what-do-to-with-japenese-ulrs”的东西。
  2. Google Japan 可能对英文网址的兴趣不如日文网址。

关于最佳行动方案的任何想法?:D

url urlencode clean-urls

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

如何在 HTTP GET 请求中发送原始数据?

http://alx3apps.appspot.com/jsonrpc_example/的示例中,当我单击提交按钮时,我注意到(通过使用 Firebug)我的浏览器提交了源代码:

{"params":["Hello ","Python!"],"method":"concat","id":1}
Run Code Online (Sandbox Code Playgroud)

不是发布参数(例如json=[encoded string from above]),而是发布具有上述值的原始字符串。

是否有一种广泛接受的方法可以通过 GET 请求复制它,或者我是否只需要对相同的字符串进行 urlencode 并将其包含为http://www.example.com/?json=%7b%22params%22%3a%5b%22Hello+%22%2c%22Python!%22%5d%2c%22method%22%3a%22concat%22%2c%22id%22%3a1%7d?我知道一些较旧的浏览器无法处理超过 250 个字符的 URI,但我对此表示同意。

post get http xmlhttprequest urlencode

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

在URL字符串中加密/编码ID

只是想在我的网站上做一些安全措施,并试图找出确保身份证的最佳途径.

示例: http://localhost/page.php?id = 90 TO: http:// localhost/share/22349234987sdsdf9sdf87423498asf9

我正在使用HTACCESS来做共享部分.但是想隐藏'90'并试图阻止任何人只是添加随机数来尝试接收不同的响应.

有关如何创建这样的东西的任何想法,或者是否存在适用于实现的东西?

安全是一个因素,所以只是试图找到最好的解决方案......

php security encryption encode urlencode

5
推荐指数
1
解决办法
2万
查看次数

如何在我的例子中使用urlencode()?

我检查php.net并阅读了一些有关如何urlencode( )工作的例子,但不知何故,我无法做到正确.有人可以帮我一把吗?

这将是一个很好的例子,所以希望我的简短例子是有意义的.

我有一个调用的页面2.php,它被调用以显示.txt选择的文件的一些内容1.php.

我被告知要建立一个链接,3.php链接应该看起来像/3?filename=a.txt 文件名作为GET参数名称和确保GET参数值正在urlencoded使用该urlencode( )功能.

但我很困惑应该如何以及在哪里urlencode()使其发挥作用.

我会在这里粘贴我的2.php代码...我简化了一些代码......

<?php

$fileContents = file("./aaa/" . $_GET["course"] . ".txt");

echo "<table border=\"1\">";

foreach($fileContents as $row)
{
    echo "<tr>";
    $contents = preg_split("/,/", $row);

    foreach($contents as $eachline)
    {
        echo "<td>";
        if(!(preg_match("/@/", $eachline)))
        {
        echo trim(ucfirst($eachline));
        }
        else
        {
        echo trim(strtolower($eachline));
        }
        echo "</td>";
    }
    echo "</tr>";
}

    echo "</table>";

    echo "<a …
Run Code Online (Sandbox Code Playgroud)

php forms get urlencode

5
推荐指数
0
解决办法
1万
查看次数

http_build_query 函数的过度 urlencoding

为什么在使用http_build_query函数构建查询字符串时,它会对[]值外的方括号进行 urlencode ,如何摆脱它?

$query = array("var" => array("foo" => "value", "bar" => "encodedBracket["));
$queryString = http_build_query($query, "", "&");
var_dump($queryString);
var_dump("urldecoded: " . urldecode($queryString));
Run Code Online (Sandbox Code Playgroud)

输出:

var%5Bfoo%5D=value&var%5Bbar%5D=encodedBracket%5B
urldecoded: var[foo]=value&var[bar]=encodedBracket[
Run Code Online (Sandbox Code Playgroud)

该函数在输出的第一行正确地对 a [inencodedBracket[进行了urlencoded ,但是在var[foo]=and 中编码方括号的原因是什么var[bar]=?如您所见, urldecoding 字符串也解码了值中的保留字符,encodedBracket%5B应该保持原样,以便查询字符串正确而不是encodedBracket[.

根据第 2.2 节统一资源标识符 (URI) 的保留字符:通用语法

URI 包括由“保留”集中的字符分隔的组件和子组件。这些字符被称为“保留”,因为它们可能(或可能不)被通用语法、每个方案特定的语法或 URI 解引用算法的实现特定的语法定义为定界符。如果 URI 组件的数据与作为分隔符的保留字符的用途发生冲突,则必须在形成 URI 之前对冲突数据进行百分比编码。

保留 = gen-delims / sub-delims

gen-delims = ":" / "/" / "?" / "#" / "[" / …

php url urlencode query-string

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

python3请求使用quote而不是quote_plus

我使用Python 3和请求模块/库来查询REST服务.

似乎默认情况下请求urllib.parse.quote_plus()用于urlencoding,即空格转换为+.

但是我查询的REST服务误解了这一点and.所以我需要将空格编码为%20,即urllib.parse.quote()改为使用.

有没有一种简单的方法来处理请求?我在文档中找不到任何选项.

urlencode python-3.x python-requests

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

Xcode 9中的"addsPercentEncoding"被破坏了吗?

在使用Xcode 9 beta 2的Swift 3.x中,使用addingPercentEncoding会产生意想不到的结果.CharacterSet.urlPathAllowed总是包含":",所以根据定义addingPercentEncoding,它永远不应该逃脱它.然而,使用此代码:

// always true
print(CharacterSet.urlPathAllowed.contains(":"))
let myString = "info:hello world"
let escapedString = myString.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed)!
print(escapedString)
Run Code Online (Sandbox Code Playgroud)

我得到了那些结果:

我得到不良行为的情况

  • Xcode 9 beta 2,iOS 9.3
  • Xcode 9 beta 2,iOS 11.0

    真实
    信息%3Ahello%20world

我得到预期行为的情况

  • Xcode 9 beta 2,iOS 10.3.1
  • Xcode 8.3.3,任何iOS

    真实
    信息:你好%20world

是否有任何解决方法来获得addingPercentEncoding正确尊重给定的工作实现allowedCharacters

urlencode ios swift xcode9-beta

5
推荐指数
2
解决办法
4553
查看次数

Google Maps:通用链接格式-目标坐标-“不支持的链接Google Maps无法打开此链接”

什么是实现以下目的的正确URL格式:

  1. 使用Universal Link从iOS上的其他应用程序打开Goog​​le Maps应用程序。
  2. 根据两个坐标(纬度经度)设置目的地,并让用户选择运输方式。

什么不起作用:

let encoded = "https://www.google.com/maps/dir/?api=1&destination=-20.021999%2C57.579075"
let url = URL(string: encoded)!
UIApplication.shared.open(url, options: [:], completionHandler: nil)
Run Code Online (Sandbox Code Playgroud)

另外,我尝试使用addingPercentEncoding方法对URL进行编码:

let string = "https://www.google.com/maps/dir/?api=1&destination=\(lat),\(long)"
let encoded = string.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!
let url = URL(string: encoded)!
UIApplication.shared.open(url, options: [:], completionHandler: nil)
Run Code Online (Sandbox Code Playgroud)

在两种情况下,结果都是相同的:“不支持的链接-Google Maps无法打开此链接” 在此处输入图片说明

另一方面,如果我删除Google Maps应用程序,或在模拟器中尝试相同的代码,则一切工作正常,并且可以完全达到我想要的结果:
在此处输入图片说明

为什么同一链接可以成功启动“ Web”应用程序,但是无法被本机应用程序识别?

有问题的字串:
https://www.google.com/maps/dir/?api=1&destination=-20.021999,57.579075

我要遵循的指南:Google Maps Guide

google-maps urlencode deep-linking swift ios-universal-links

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

链接带有重音符号的文件夹中的.avi文件时出错

我有一个.avi文件,该文件位于服务器的文件夹中。该文件夹的名称带有重音符号。关键是,当我将该文件放入标签中时,它显示了一个txt文件(avi文件编码,我认为),这显然是错误的。它只是在具有https协议的Internet Explorer(至少为版本11)中发生。

对于mp4文件,在“非重音文件夹”中的avi文件,在http协议中都没有,在我直接在浏览器中粘贴地址时(无论是Chrome还是Firefox)都没有这种情况。

示例来说明我要说的内容:

<a href="https://myserver.com/myAccentédFolder/myVid.avi" target="_blank">ERROR</a>
<a href="https://myserver.com/myNonAccentedFolder/myVid.avi" target="_blank">OK 1</a>
<a href="https://myserver.com/myAccentédFolder/myVid.mp4" target="_blank">OK 2</a>
<a href="http://myserver.com/myAccentédFolder/myVid.avi" target="_blank">OK 3</a>
Run Code Online (Sandbox Code Playgroud)

所以我知道如何“修复”它……但是,如果我需要所有的工具,该怎么办?-使用IE 11-文件为.avi-带有重音符号的文件夹-地址为链接内的地址-地址为https协议

%$&$%发生了什么?

html https urlencode mime-types internet-explorer-11

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