日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

傲娇Android二三事之操蛋的开发日记(第一回)

發布時間:2025/4/9 Android 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 傲娇Android二三事之操蛋的开发日记(第一回) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

武宗元年 十一月初四?霾

今日魔都,依舊仙霧環繞,仿佛蓬萊落凡塵。望著470這個鮮紅的AQI修仙指數,貧道不禁吟道,“正是修仙好光景,霧霾時節又逢君”。但在這個只修bug,不修仙的時代,路上的行人都步履匆匆趕著去修改屬于自己的bug。這不貧道也趕著修改自己的bug。話說最近貧道在開發一個某網站的登錄客戶端,如果密碼輸入常用的英語字符啥的,則相安無事。但一旦輸入諸如:€,¥,$貨幣符號,貌似服務器是克朗臺開發的,見錢眼開啊,立馬高潮到crash,發了個"class=java.nio.charset.MalformedInputException msg=Input length = 1"錯誤,而沒有正確返回Input里含有特殊字符的錯誤。但奇怪的是,從網站里登陸,即使你輸入的密碼全是由€,¥,$組成的,此時的服務器又變成了鐵面無私的包黑子了,立馬返回Input里含有特殊字符的錯誤。貧道暗想:“這服務器哥們沒長兩條腿可惜了,否則跑到洛杉磯啥的,今年的小金人就非他莫屬了”。

俗話說得好:“在家靠父母,出門靠百度”。打開百度頁面,貧道先虔誠的焚香拜了兩拜,然后小心翼翼的輸入java.nio.charset.MalformedInputException,只見立馬眾道友的修煉心得猶如窗外的仙霾滾滾而來。只見其中的一位道友寫道,”從java.nio.charset.MalformedInputException這個異常來看,應該是字符編碼的問題。“難道是服務器沒有編碼處理?但如果是這樣的話,為啥從網站登錄就沒問題呢。難道是網頁發送請求的時候,對其中的內容進行了編碼。貧道又立馬輸入”http 字符集“查詢,這時吳秦吳大俠的一篇鴻篇巨作字符集和字符編碼(Charset & Encoding),映入了貧道的眼簾,在此作中,吳大俠提到了:”在HTTP中,與字符集和字符編碼相關的消息頭是Accept-Charset/Content-Type“。難道是我們的代碼中沒有設置字符集信息,導致服務器識別錯誤,然后Crash了。貧道馬上翻出相關代碼,

HttpResponse putRequest(String strUrl,Map<String, String> mapHeaders, String strContent) {HttpResponse response = null;try {HttpClient httpClient = getHttpClient();HttpPut method = new HttpPut(strUrl);if (mapHeaders != null && !mapHeaders.isEmpty()) {for (String key : mapHeaders.keySet()) {method.addHeader(key, mapHeaders.get(key));}}if (strContent != null)method.setEntity(new StringEntity(strContent));response = httpClient.execute(method);} catch (Exception ex) {ex.printStackTrace();}return response;}

果然將strContent放到Entity里的時候,沒有任何的字符集設置。但如何給strContent設置字符集呢,貧道趕忙翻開了與”葵花寶典“齊名的developer android?, 只見典籍中記載道?public?StringEntity?(String?s,?String?charset) ,看來StringEntity是可以設定字符集名稱,來告知服務器其所攜內容的字符集。貧道趕忙又修改了下代碼,

HttpResponse putRequest(String strUrl,Map<String, String> mapHeaders, String strContent) {HttpResponse response = null;try {HttpClient httpClient = getHttpClient();HttpPut method = new HttpPut(strUrl);if (mapHeaders != null && !mapHeaders.isEmpty()) {for (String key : mapHeaders.keySet()) {method.addHeader(key, mapHeaders.get(key));}}if (strContent != null)method.setEntity(new StringEntity(strContent,"UTF-8"));response = httpClient.execute(method);} catch (Exception ex) {ex.printStackTrace();}return response;}

果然修改后,服務器也如同預料地那樣,返回了Input里含有非法字符的錯誤。此時的服務器發出了由衷的贊嘆:”自從客服端改了代碼后, 腰不酸,腿不疼,處理其請求來,再也不crash了。"

道可道,非常道。看來在IT的世界中,一樣有“道”的存在,在本例中,這個"道"就是字符集。

此時的貧道,又拿起了道德經,走在藹藹的仙霾中,重新溫習了起來,遠處傳來一串串麻雀的咳嗽聲。

?

?



轉載于:https://www.cnblogs.com/andreitang/p/daily.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的傲娇Android二三事之操蛋的开发日记(第一回)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。