- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在使用 GET 方法,在该方法中我必须在 URL 中传递电子邮件地址。 API 期望它被编码。我尝试了编码选项,但无法对“+”字符进行编码。
我尝试了以下代码
let encodedEmail = emailAddressTxt.text!.addingPercentEncoding(withAllowedCharacters:.urlHostAllowed)
let urlString = "http://www.example.com/User/GetUserDetailsByEmailAddress?EmailAddress=\(encodedEmail!)"
print(escapedString)
它打印http://www.example.com/User/GetUserDetailsByEmailAddress?EmailAddress=mano+1%40gmail.com
其中“@”字符仅被编码而“+”未被编码。
最佳答案
不幸的是,CharacterSet.urlHostAllowed
和 CharacterSet.urlQueryAllowed
都包含 +
作为允许。由于历史原因,大多数网络服务器将 +
视为空格 () 的替代品,因此您需要对
+
进行转义。
为此,您可能需要定义自己的CharacterSet
:
extension CharacterSet {
static let rfc3986Unreserved = CharacterSet(charactersIn: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~")
}
let emailAddressText = "mano+1@gmail.com"
let encodedEmail = emailAddressText.addingPercentEncoding(withAllowedCharacters:.rfc3986Unreserved)
print(encodedEmail!) //->mano%2B1%40gmail.com
关于ios - 无法在 URL + swift 中编码加号字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41561853/
最近有人告诉我,+ (前一个模式/字符的一次或多次出现)不是基本正则表达式的一部分。甚至写为 \+ 时也不行. 这是关于最大兼容性的问题。 我的印象是…… echo "Hello World, I a
我正在寻找电话号码的正则表达式,但似乎找不到我需要的东西。 要求 以加号(可选)开头,例如。 +442021234 允许括号(可选)例如。 (+44)2021234 允许任意长度的数字 允许数字之间的
假设我使用 gsub 并希望从字符串中删除以下 (=,+,-) 符号并替换为下划线。 有人可以描述当我尝试使用带加号 (+) 的 gsub 时发生的情况吗? test<- "sandwich=brea
我一直在寻找一种方法来将我自己的自定义符号字符添加到正数和负数中,但似乎没有一种标准的方法可以做到这一点。 IOStreams 中的加减号是否已国际化?我能找到的最接近覆盖它的是 std::money
过去几天我一直在开发菜单。它将用作可扩展/可折叠(甚至是一个词吗?)菜单。现在我让菜单默认垂直变大,然后当你点击“+/-”按钮时,尺寸垂直减小。你再次点击它,然后它在垂直方向上变大......等等。
你好,我正在阅读 Mach7 的以下代码(顺便说一句,看起来不错,我想知道为什么 c++17 没有采用它,但那是题外话……) bool operator==(const Term& left, con
我正在尝试通过玩 Arduino Uno 来学习 C。我正在审查 code for the Colorduino library on github .我想知道 ++ 在应用于结构时如何工作。 在 C
我正在使用 PHP 和我的短信服务提供商提供的 API key 向手机发送短信。 我发送的短信完美地到达了目标手机,但问题是当我有一个 "+" 登录我的消息时 "+" 没有出现在手机。这可能是因为 "
我一直在寻找有关立即调用函数的信息,在某个地方我偶然发现了这种表示法: +function(){console.log("Something.")}() 有人可以向我解释一下函数前面的 + 符号的含义
mvn dependency-tree有什么区别'+' 和 '\' 之间的输出。这对我来说似乎相当随意,但我确定这不是...... +- com.tom:artifact:pom:6.0.0:comp
抱歉,如果这些问题是 JS 的基础知识之一。 问题 1。 我试图让代码检测位于外部数组内部的内部数组, 数组的结构是这样的; var array = ['鲍勃', ['蒂姆', '凯蒂', '佐伊']
我正在制作一个计算器程序,但在使用加法功能时遇到问题。我有其他功能(“/”、“-”、“*”)工作,但加号(“+”)不起作用。 html 和 JavaScript 包含在下面... RDaniel
这个问题已经有答案了: How to encode the plus (+) symbol in a URL (6 个回答) 已关闭 3 个月前。 我找不到任何地方,我认为这是独特的问题。 我想添加以
这是我在网上找到的一个正则表达式,似乎在简单的电子邮件地址验证方面做得很好。问题是它不允许在电子邮件中使用 +,例如 my+email@domain.com。我不擅长正则表达式,那么如何在不破坏整个东
我无法下载图片: http://www.wallpick.com/wp-content/uploads/2014/02/08/Water+Sports_wallpapers_242-640x480.j
我想知道如何在 Javascript 中将变量作为 +4 传递,然后在 php 中将其作为 +4 检索。 无论我做什么,每当我存储一个+4",并验证它是这样存储的,当我检索它时,+ 就消失了,我所有的
这个问题的答案是community effort 。编辑现有答案以改进这篇文章。它目前不接受新的答案或互动。
这个问题的答案是community effort 。编辑现有答案以改进这篇文章。它目前不接受新的答案或互动。
这个问题的答案是community effort 。编辑现有答案以改进这篇文章。它目前不接受新的答案或互动。
谁能帮助我理解使用 isinstance 时加号 (+) 的用途。 In [76]: isinstance('qwert', string) Out[76]: True In [77]: isinst
我是一名优秀的程序员,十分优秀!