2016年11月30日 星期三

[30 days Jsp & Servlet 學習紀錄][day 0 ] 準備篇

其實以前就知道IT鐵人比賽了
google查問題時常看到
想說利用現在比較有時間就來參加一下好了
雖然我是參加自由競賽組


關於題目
其實本來是想要用這個機會來學一下python好了,剛好中午吃飯再看國外的30 days 教學影片
但礙於現在也同時正在重新複習jsp & servlet
考慮了很久在開賽前一天去改了題目
(這段時間有空還是會記錄一下自己接觸python的紀錄)

回歸正題
未來這30 days
主要是藉由jsp & servlet 深入淺出 這本聖經
邊紀錄實作自己的練習
目標是在這一兩個月要完成一個小專案(一直以來說要進行好久了)

開發的IDE為eclipse
使用的版本為java 8

---------------------------------------------------------------------------------------------------
工欲善其事,必先利其器
雖然心中默默地想要把這部分留到day 1
但鋼鐵般的意志還是叫我不能偷懶

(廢話結束)


Day 0 安裝環境準備
其實java的安裝環境網路上一推這裡就不提了
主要是在講先前安裝tomcat 8 所碰到的一些問題

目前我使用的eclipse為kepler
eclipse版本演進請點我
要注意本版有些並沒有支援到tomcat 8
(eg. 我在公司安裝的時候就一直鬼打牆的Indigo)

step 1.
點選eclipse>help>Install New Softerware




step 2.
搜尋 http://download.eclipse.org/webtools/repository/luna
找到目前最新的版本3.6.3,將JST Server Adapters 的選項打勾(如圖所示)





step 3.
照著指示安裝就好啦,要稍微注意一下自己的eclipse版本是多少
筆者用公司電腦安裝就發生Indigo安裝會失敗,查了才發現不支援
安裝完成後到server的選項去看就可以看到tomcat 8 了


以上只是說明一下先前遇到的問題
接下來的30 days ,不求文章多厲害
只希望可以鼓勵強迫自己能好好認真學習
GO


2016年11月10日 星期四

[.net] C# URL 加解密等號問題

URL在傳址時,我們是用Server.UrlEncode去加密
Server.UrlEncode 官方說明
https://msdn.microsoft.com/en-us/library/ms525738(v=vs.90).aspx

Server.UrlEncode v.s  HttpUtility.UrlEncode
https://dotblogs.com.tw/mis2000lab/2008/06/11/4268


如果是用Server.UrlEncode,針對URL request 回來會自動decode
但發現使用Server.UrlEncode會有將URL空白轉成+號的情形
這在IIS7之後會有網頁錯誤的問題
請參考
http://blog.darkthread.net/post-2015-07-02-iis7-disallow-plus-in-url-path.aspx

順便筆記一下編碼相關的基本常識
ASCII =>只限英數字
BIG5 =>台灣自己開發出來的中文編碼系統,會有難字及亂碼的問題
UTF8 = > ㄍbase 在 Unicode 上,支援中英文數字,相容ASCII

於是跟同事討論決定轉成ASCII加密轉換成字串( Convert.ToBase64String)
再已Server.UrlEncode傳送

等到解回來時

URL request 會自動將Server.UrlEncode解密
再使用Encoding.Default(使用系統 ANSI 字碼頁的編碼方式) 去做解碼

在此紀錄一下