iOS Url特殊符號編碼問題
開發中曾遇到棘手無法解決的問題,當時傳輸引數給後臺,後臺總是解析失敗。問題一直未解,最後還是換了其它方法曲線解困了。現在覺得應該是這個問題,url中帶了&這個特殊符號,單單使用encodeBase64、decodeBase64不行,還要使用encodeToPercentEscapeString這個處理一下。
url中是key value鍵值對,根據&進行分割多個key value,所以如果url像這樣
@”http://127.0.0.1/php/login.php?username=chang&123&password=admin“,
使用者名稱解析的是username為chang而不是chang&123。使用encodeToPercentEscapeString處理後,不會出現這樣問題。
//base64編碼 "加密"--- 可以把任意的二進位制資料 轉化成字串 方便在網路上傳輸
- (NSString *)encodeBase64:(NSString *)str{
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
return [data base64EncodedStringWithOptions:0];
}
//base64解碼 "解密"
- (NSString *)decodeBase64:(NSString *)base64Str{
NSData *data = [[NSData alloc] initWithBase64EncodedString:base64Str options:0];
return [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
}
//進行url編碼 (但是不對漢字和空格進行編碼)
- (NSString *)encodeToPercentEscapeString: (NSString *) input
{
NSString *outputStr = (NSString *) CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)input,NULL,(CFStringRef)@"!*'();:@&=+ $,/?%#[]",kCFStringEncodingUTF8));
return outputStr;
}
相關文章
- 常用特殊符號大全符號
- scheme跳轉特殊字元編碼問題Scheme字元
- 解決 requests 庫 URL 編碼問題
- lombok編譯遇到“找不到符號的問題”Lombok編譯符號
- 網址URL中特殊字元轉義編碼字元
- 箭頭特殊符號大全符號
- markdown特殊符號語法符號
- HTML 中的特殊符號HTML符號
- JS、C#中URL編碼解碼問題JSC#
- ptyon 特殊處理 url 編碼與解碼,字元編碼轉化 unicode字元Unicode
- JS歷理 特殊符號轉義十進位制編JS符號
- 萬用字元與特殊符號字元符號
- input禁止輸入特殊符號符號
- Yaml中特殊符號"| > |+ |-"的作用YAML符號
- 如何在Mac上快速輸入特殊符號?Mac快速輸入特殊符號小技巧Mac符號
- linux常見特殊符號介紹Linux符號
- Mybatis xml特殊符號轉義寫法MyBatisXML符號
- 表格中輸入特殊符號和公式符號公式
- latex 中求和符號、箭頭問題符號
- 關於特殊符號&與& 的處理符號
- Linux中的特殊符號含義及作用!Linux符號
- Java的識別符號與編碼規範Java符號
- 字串(暱稱)過濾特殊符號和表情(通用)字串符號
- java特殊編碼生成Java
- MySQL 資料庫儲存 Emoji 表情及特殊符號MySql資料庫符號
- scss 檔案裡的特殊符號 @ 和 @include 的用法CSS符號
- 解決UILable標點符號居中的問題UI符號
- Javascript編碼解碼URLJavaScript
- js解決url中文亂碼問題JS
- py編碼問題
- 字元編碼問題字元
- URL編碼轉換
- 深入剖析go中字串的編碼問題——特殊字元的string怎麼轉byte?Go字串字元
- Mac電腦如何輸入command(⌘)、option(⌥)、shift(⇧)等特殊符號Mac符號
- 微信公眾號傳送模板訊息,出現亂碼問題---字元中文編碼問題字元
- iOS 逆向 - Hook / fishHook 原理與符號表iOSHook符號
- 編譯器的符號表管理編譯符號
- URL編碼與解碼原理
- css 樣式檔案中的特殊符號 - 波浪號(也叫 tilde,squiggle,twiddle)CSS符號UI