【編碼】url 網址 中文轉 百分比 符號
台積電 = % A 5 x % B F n % B 9 q <-- p="">
示範 網址:https://www.ez2o.com/App/Web/UrlEncodeDecode
圖示如下:
-->
2018年5月17日 星期四
2018年5月5日 星期六
【股東會紀念品】台新金 控 股票代號號:2887 日期:2018-05-04
2018年5月2日 星期三
【Java Web】URL 路徑
【Java Web】URL 路徑
如何抓取 URL
完整路徑:
request.getRequestURL().append('?').append(request.getQueryString())
範例:https://www.blogger.com/u/1/blogger.g?blogID=4669872918083795947#editor/target=post;postID=8481547310951663883
request.getQueryString()
參數路徑:blogID=4669872918083795947#editor/target=post;postID=8481547310951663883
備註:問號後面
如何抓取 URL
完整路徑:
request.getRequestURL().append('?').append(request.getQueryString())
範例:https://www.blogger.com/u/1/blogger.g?blogID=4669872918083795947#editor/target=post;postID=8481547310951663883
request.getQueryString()
參數路徑:blogID=4669872918083795947#editor/target=post;postID=8481547310951663883
備註:問號後面
2018年4月12日 星期四
【憑證 Certification 】PKCS 12 ( PFX ) 說明 -(P7簽章)
【憑證 Certification 】PKCS 12 ( PFX ) 說明
一、PKCS 12 實體檔又名 PFX檔案 ,為副檔名是 .pfx
二、經常用在 證券下單上 或 IIS TLS(SSL) 憑證 主機上
三、PFX 可以透過 html 5 的 File Reader 轉成 base64字串
可透過 微軟 dll 元件 或 國外元件 Forge JavaScript元件 來讀 pfx 檔內容
四、PFX 內有 private key 跟 public key 跟 Cert 純憑證
五、能透過 private key 能反推出 public key
Pfx 要拿到 Cert 必需 輸入 pfx 的 密碼 才能取到 Cert資訊
六、p7 簽章 需要 1.簽章內容 、2.Cert 、 3.private key ,就可以完成 P7簽章
一、PKCS 12 實體檔又名 PFX檔案 ,為副檔名是 .pfx
二、經常用在 證券下單上 或 IIS TLS(SSL) 憑證 主機上
三、PFX 可以透過 html 5 的 File Reader 轉成 base64字串
可透過 微軟 dll 元件 或 國外元件 Forge JavaScript元件 來讀 pfx 檔內容
四、PFX 內有 private key 跟 public key 跟 Cert 純憑證
五、能透過 private key 能反推出 public key
Pfx 要拿到 Cert 必需 輸入 pfx 的 密碼 才能取到 Cert資訊
六、p7 簽章 需要 1.簽章內容 、2.Cert 、 3.private key ,就可以完成 P7簽章
2018年4月9日 星期一
2018年4月7日 星期六
2018年4月3日 星期二
2018年4月2日 星期一
2018年3月27日 星期二
【股票分享】群創 買進 成交 2018/03/22 成交單位:13 群創, 股票, 股票買進 10000股
【股票分享】群創 買進 成交 2018/03/22 成交單位:13 群創, 股票, 股票買進 5000股
成本:65,028 (含手續費 28塊)
【股票分享】群創 買進 成交 2018/03/22 成交單位:13.05 群創, 股票, 股票買進 5000股
成本:65,278 (含手續費 28塊)
總成本:130,306
2018年3月16日 星期五
【資訊安全】Header content-security-policy
【資訊安全】Header content-security-policy
ALL_FORM
Chrome 處理 Iframe
frame-ancestors
frame-src
若如果header 也存在著 X-Frame-Options 將略過不處理 以frame-ancestors 為優先
在IE 上 不支援 frame-ancestors、frame-src 只支援 x-frame-options SAMEORIGIN
真是見鬼了
而 IE 只支援 ALLOW-FROM
ALL_FORM
Chrome 處理 Iframe
frame-ancestors
frame-src
若如果header 也存在著 X-Frame-Options 將略過不處理 以frame-ancestors 為優先
在IE 上 不支援 frame-ancestors、frame-src 只支援 x-frame-options SAMEORIGIN
真是見鬼了
而 IE 只支援 ALLOW-FROM
2018年3月14日 星期三
【Tomcat】 調整 Response Headers Server:Apache-Coyote/1.1
【Tomcat】 調整 Response Headers Server:Apache-Coyote/1.1
server.xml
Connector 標籤
屬性:server="Microsoft-IIS/8.5"
請在測試機做,若在開發環境作, 可能會有副作用....比如..伺服器叫不起來等...
server.xml
Connector 標籤
屬性:server="Microsoft-IIS/8.5"
請在測試機做,若在開發環境作, 可能會有副作用....比如..伺服器叫不起來等...
2018年3月13日 星期二
【Eclipse】當專案 程式一堆 紅色打xx 無法編譯或LIB 載入失敗,請先看 Project Facet
【Tomcat ,Java】佈署環境及基本名辭介紹(JRE,JDK)
【Tomcat ,Java】佈署環境及基本名辭介紹(JRE,JDK)
要安裝Tomcat 時,必需先要安裝必要 開發編譯元件(JDK)和執行平台元件(JRE)
Java JRE 全名:Java SE Runtime Environment 8
下載相關網址:http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
比如:Tomcat 需要 JRE
Java JDK 全名:Java SE Development Kit 8
下載相關網址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
要安裝Tomcat 時,必需先要安裝必要 開發編譯元件(JDK)和執行平台元件(JRE)
Java JRE 全名:Java SE Runtime Environment 8
下載相關網址:http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
比如:Tomcat 需要 JRE
Java JDK 全名:Java SE Development Kit 8
下載相關網址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2018年3月12日 星期一
【Tomcat 8.0.50】config(web.xml, server.xml)...相關設定技巧
C:\apache-tomcat-8.0.50\conf\server.xml
標籤:Connector 底下
屬性:server -->header 中顯示 server 資訊 (可以改成 asp.net ) 範例: server="Asp.net"
屬性:maxThreads -->連線數 預設200
C:\apache-tomcat-8.0.50\conf\web.xml
標籤:Connector 底下
屬性:server -->header 中顯示 server 資訊 (可以改成 asp.net ) 範例: server="Asp.net"
屬性:maxThreads -->連線數 預設200
C:\apache-tomcat-8.0.50\conf\web.xml
【Tomcat 8.0.50】安裝、移除 安裝在windows 服務裡面
【Tomcat】安裝、移除 安裝在windows 服務裡面
版本:tomcat 8.0.50
官網說明 網址:http://tomcat.apache.org/tomcat-8.0-doc/windows-service-howto.html#Installing_services
command
安裝
C:\apache-tomcat-8.0.50\bin>service.bat install
command
移除
C:\apache-tomcat-8.0.50\bin>tomcat8 //DS//Tomcat8
版本:tomcat 8.0.50
官網說明 網址:http://tomcat.apache.org/tomcat-8.0-doc/windows-service-howto.html#Installing_services
command
安裝
C:\apache-tomcat-8.0.50\bin>service.bat install
command
移除
C:\apache-tomcat-8.0.50\bin>tomcat8 //DS//Tomcat8
【Tomcat】Tomcat 8.0.50 RemoteAddrValve 設定
Tomcat 8.0.5
org.apache.catalina.valves.RemoteAddrValve
提供兩個地方可以設定 XML
(針對1.舊版Tomcat的尚可設定,未來可能會拿掉)
1.C:\tomcat-install\conf\Catalina\localhost\
如果檔案不存在的話,就新增一個 manager.xml
2.新版:C:\apache-tomcat-8.0.50\webapps\manager\META-INF
context.xml
內地有個地方還蠻新的介紹 網址:https://www.w3cschool.cn/tomcat/zuxi1k90.html
tomcat 官網(Securing Management Applications)
網址:http://tomcat.apache.org/tomcat-8.0-doc/security-howto.html
org.apache.catalina.valves.RemoteAddrValve
提供兩個地方可以設定 XML
(針對1.舊版Tomcat的尚可設定,未來可能會拿掉)
1.C:\tomcat-install\conf\Catalina\localhost\
如果檔案不存在的話,就新增一個 manager.xml
2.新版:C:\apache-tomcat-8.0.50\webapps\manager\META-INF
context.xml
內地有個地方還蠻新的介紹 網址:https://www.w3cschool.cn/tomcat/zuxi1k90.html
tomcat 官網(Securing Management Applications)
網址:http://tomcat.apache.org/tomcat-8.0-doc/security-howto.html
2018年3月8日 星期四
【Tomcat】tomcat html Response Headers Cache-Control 200 ExpiresFilter jsp
當你遇到 Status Code:200 OK (from disk cache) 就會 GG
為什麼就會 GG ,因為瀏覽器會先讀取 暫存頁面.而不會先向 SERVER 要新的 頁面內容
透過 Tomcat JSP web.xml 裡面有提供 ExpiresFilter 機制就能處理這樣的狀況或狀態
ExpiresDefault 代表 所有 MIME text/plain image/png application/javascript...
若指定哪種類型 MIME
ExpiresByType text/html
以下這行,就會是 mas-age=0
now plus 0 second
以下這行,比對所有 url 網址
/*
若是Status Code:200 狀態
就會在 Response Headers 加上 Cache-Control: max-age=0
若是Status Code:304 狀態
預設會是略過不處理,這可以接受,因為比對 Server 跟 瀏覽端 雙方都相同狀態的意思
若是要在 tomcat log 中記錄的話
就是要到 C:\apache-tomcat-8.0.50\conf\logging.properties <-- p="">最底下新增一行 org.apache.catalina.filters.ExpiresFilter.level = FINE
醬子就可以了
Tomcat 官網說明
http://tomcat.apache.org/tomcat-8.0-doc/config/filter.html#Expires_Filter
完整規範如下 大家可以參考 官網說明
<-- class="separator" config="" div="" filter.html="" http:="" org.apache.catalina.filters.expiresfilter.level="FINE" style="clear: both; text-align: center;" tomcat-8.0-doc="" tomcat.apache.org="" tomcat="" xpires_filter="">-->
-->
為什麼就會 GG ,因為瀏覽器會先讀取 暫存頁面.而不會先向 SERVER 要新的 頁面內容
透過 Tomcat JSP web.xml 裡面有提供 ExpiresFilter 機制就能處理這樣的狀況或狀態
ExpiresDefault 代表 所有 MIME text/plain image/png application/javascript...
若指定哪種類型 MIME
ExpiresByType text/html
以下這行,就會是 mas-age=0
以下這行,比對所有 url 網址
若是Status Code:200 狀態
就會在 Response Headers 加上 Cache-Control: max-age=0
若是Status Code:304 狀態
預設會是略過不處理,這可以接受,因為比對 Server 跟 瀏覽端 雙方都相同狀態的意思
若是要在 tomcat log 中記錄的話
就是要到 C:\apache-tomcat-8.0.50\conf\logging.properties <-- p="">最底下新增一行 org.apache.catalina.filters.ExpiresFilter.level = FINE
醬子就可以了
Tomcat 官網說明
http://tomcat.apache.org/tomcat-8.0-doc/config/filter.html#Expires_Filter
完整規範如下 大家可以參考 官網說明
<-- class="separator" config="" div="" filter.html="" http:="" org.apache.catalina.filters.expiresfilter.level="FINE" style="clear: both; text-align: center;" tomcat-8.0-doc="" tomcat.apache.org="" tomcat="" xpires_filter="">-->
-->
2018年3月5日 星期一
【HTML】ActiveXObject("CAPICOM.Store") 錯誤編號:2405
ActiveXObject("CAPICOM.Store")
錯誤編號:2405
查證:有可能是未加入信任網域
2018年2月8日 星期四
【C#】API url parameter 參數 Encode 有趣的規範 cp950
【C#】API url parameter 參數 Encode 有趣的規範
web Client parameter 有含 中文 ,請注意 Api Server 系統 是utf8 接還是 big5 接 你的 參數
如果 api server 是 utf8 ,那很好,因為 html url 本身就是 follower utf8 格式
若 API SERVER 是BIG5 接 參數,請注意,
WEB CLIENT 的程式, 參數必需要再轉成 CP950 encode 編碼
如下:
Encoding cp950 = System.Text.Encoding.Default;
cp950 = Encoding.GetEncoding(950);
string a = HttpUtility.UrlEncode(item.Value, cp950); <----url big5="" nbsp="" p="">
為何要兩道手序,
因為 C# Encoding 有(utf8、utf16、utf32、ASCII) ,
就是沒有 BIG5格式----url>
透過 Encoding GetEncoding 參數 950 幫我們抓 big5 格式回來..
=.=" 果然是美國人寫的程式...不是說要國際化嗎?
另外 網頁的 encodeURIComponent 字串會轉換成 UTF-8
所以程式接的時候是 HttpUtility UrlDecode(url)
但要再轉發 API 的話 就要看 對方 SERVER (參數)吃什麼 ContenType (utf8 or big5 ...)
以上
web Client parameter 有含 中文 ,請注意 Api Server 系統 是utf8 接還是 big5 接 你的 參數
如果 api server 是 utf8 ,那很好,因為 html url 本身就是 follower utf8 格式
若 API SERVER 是BIG5 接 參數,請注意,
WEB CLIENT 的程式, 參數必需要再轉成 CP950 encode 編碼
如下:
Encoding cp950 = System.Text.Encoding.Default;
cp950 = Encoding.GetEncoding(950);
string a = HttpUtility.UrlEncode(item.Value, cp950); <----url big5="" nbsp="" p="">
為何要兩道手序,
因為 C# Encoding 有(utf8、utf16、utf32、ASCII) ,
就是沒有 BIG5格式----url>
透過 Encoding GetEncoding 參數 950 幫我們抓 big5 格式回來..
=.=" 果然是美國人寫的程式...不是說要國際化嗎?
另外 網頁的 encodeURIComponent 字串會轉換成 UTF-8
所以程式接的時候是 HttpUtility UrlDecode(url)
但要再轉發 API 的話 就要看 對方 SERVER (參數)吃什麼 ContenType (utf8 or big5 ...)
以上
【C#】不能 var --->System.Web.HttpUtility.ParseQueryString (NameValueCollection)
【C#】不能 var --->System.Web.HttpUtility.ParseQueryString (NameValueCollection)
要明確然指定 NameValueCollection
要明確然指定 NameValueCollection
2018年2月6日 星期二
2018年2月1日 星期四
【C# NameValueCollection】 針對NameValueCollection 做 LINQ
public static Dictionary ParseQueryString(string queryString)
{
System.Collections.Specialized.NameValueCollection nvc = System.Web.HttpUtility.ParseQueryString(queryString);
var a = from key in nvc.Cast()
from value in nvc.GetValues(key)
where key != null
select new { key, value };
return a.ToDictionary(pair => pair.key, pair => pair.value); ;
}
{
System.Collections.Specialized.NameValueCollection nvc = System.Web.HttpUtility.ParseQueryString(queryString);
var a = from key in nvc.Cast
from value in nvc.GetValues(key)
where key != null
select new { key, value };
return a.ToDictionary(pair => pair.key, pair => pair.value); ;
}
2018年1月24日 星期三
【asp.net C#】在HttpClient的DefaultRequestHeaders上設置Cookie Header
可參考:
http://stackoverflow.com/questions/12373738/how-do-i-set-a-cookie-on-httpclients-httprequestmessage/13287224#13287224
https://d-fens.ch/2016/12/27/howto-set-cookie-header-on-defaultrequestheaders-of-httpclient/
重點兩種
【預設:HttpClientHandler(UseCookies=true)】
HttpClient <--httpclienthandler ookiecontainer="" p="">
cookieContainer.Add(baseAddress, new Cookie("CookieName", "cookie_value"));
【HttpClient <--httpclienthandler p="">
若是:HttpClientHandler(UseCookies=false) 則是手動加入header
httpClient.DefaultRequestHeaders.Add("Cookie", "auth=ArbitrarySessionToken");--httpclienthandler>--httpclienthandler>
http://stackoverflow.com/questions/12373738/how-do-i-set-a-cookie-on-httpclients-httprequestmessage/13287224#13287224
https://d-fens.ch/2016/12/27/howto-set-cookie-header-on-defaultrequestheaders-of-httpclient/
重點兩種
【預設:HttpClientHandler(UseCookies=true)】
HttpClient <--httpclienthandler ookiecontainer="" p="">
cookieContainer.Add(baseAddress, new Cookie("CookieName", "cookie_value"));
【HttpClient <--httpclienthandler p="">
若是:HttpClientHandler(UseCookies=false) 則是手動加入header
httpClient.DefaultRequestHeaders.Add("Cookie", "auth=ArbitrarySessionToken");--httpclienthandler>--httpclienthandler>
訂閱:
文章 (Atom)