在nodejs中發起json post的字元長度問題

程式技術/Javascript 2014/09/22 23:24
views: 2928 times
在 nodejs 專案中, 若是需要對外發起使用 application/json 的 http post , 若有中文字, 需要注意計算字串長度的問題. 一般發起的程式碼請參考:

http://tech.pro/tutorial/1091/posting-json-data-with-nodejs

不過該範例是使用英文字, 所以沒有問題, 若是要發起中文字的 json http post, 需要調整計算 Content-Length 的方式, 使用 new Buffer(str).length, 如下:


參考資料: http://cnodejs.org/topic/50616f5301d0b801482695cf
top

Google QRCode Chart API

WebTrend 2014/08/26 12:16
views: 63032 times
使用 Google Chart API 來產生 QRCode 很方便, 可以參考這裡的資料:
https://developers.google.com/chart/infographics/docs/qr_codes

一般來說會用到的參數共有以下:
1. cht=qr
2. chs=[width]x[height] (產生的長寬)
3. chl=[data] (要產生的內容, 可以放文字或網址等資訊)

所以以本站網址為例, QRCode 為:
http://chart.apis.google.com/chart?cht=qr&chs=200x200&chl=http%3A//diary.tw/tim

以圖片顯示為:

Google Chart API 產生 QR Code還真的蠻方便的.

[2014/8/27]
補充, 若是需要大量產生, 可以利用這個網站服務, 一次可以免費批次產生100個QRCode, 也十分方便好用.
http://www.qrexplore.com/generate/

另外也有個線上辨識Barcode、QRCode的服務, 可以用圖片網址或是傳送圖片的方式進行, 方便大家在產生QRCode的驗證.
http://zxing.org/w/decode.jspx
top

lable標籤包住的問題

程式技術/Javascript 2014/07/04 15:33
views: 248355 times
在現在使用手機瀏覽網頁愈來愈普遍的時候, 著重對手機網頁的效果也愈來愈重要.

最近測試到一個問題, 被 label 包起來的多個 input box 時, 會發生即時點到後第二或第三個 input box 也會 focus 到第一個 input box 的問題. 如下面的 html



其實這個問題的原因很單純, 因為 label 是用來強化使用者輸入便利性的標籤, 拿來包多個 input 會發生只會指向第一個 input 是因為原始的設計導致, 目前測試在桌機的 firefox 、android 原生瀏覽器、android chrome瀏覽器、iphone/ipad safari瀏覽器, 都會有這樣的現象, 但桌機的chrome, 桌機的IE11則不會, 原因可能和取得物件焦點的順序有關.

無論如何, 包多個 input 在一個 label 不是一個正確的作法, 要避免這個狀況, 就是不在把多個 input 放在一個 label 中即可.

測試網頁 http://sample.diary.tw/35/label.htm

html label標籤的用法, 可以參考這裡: http://www.w3schools.com/tags/tag_label.asp


top
TAG html, input, label

iperf測試網路傳輸品質及頻寬工具

好用軟體 2014/05/21 17:11
views: 472268 times
在點對點間要測試傳輸品質及頻寬狀況, 有個好用的工具, iperf, 官方網址為:
http://iperf.fr/

這個工具不僅是可以測試一般 TCP的傳輸, 也可以測試 UDP的傳輸, 使用方式很簡單, 下載解開後, 執行檔就是 iperf.exe 同時可以擔任 client 及 server 兩個角色, 找兩台電腦(當然一台也可以), 以測試 udp 為例, 在擔任 server 的主機上下指令:

其中參數 -s 為啟動 server mode, -u 為使用 udp 傳輸.
成功起動 server 會出現以下訊息(預設為 port 5001):
------------------------------------------------------------
Server listening on UDP port 5001
Receiving 1470 byte datagrams
UDP buffer size: 64.0 KByte (default)
------------------------------------------------------------

然後在擔任 client 角色的機器上執行以下指令:

其中參數 [server_ip]為擔任 server 的 ip, 而 -i 1 是指每一秒鐘出現一個 log, 以下為結果:
------------------------------------------------------------
Client connecting to localhost, UDP port 5001
Sending 1470 byte datagrams
UDP buffer size: 64.0 KByte (default)
------------------------------------------------------------
[  3] local 127.0.0.1 port 52778 connected with 127.0.0.1 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 1.0 sec   129 KBytes  1.06 Mbits/sec
[  3]  1.0- 2.0 sec   128 KBytes  1.05 Mbits/sec
[  3]  2.0- 3.0 sec   128 KBytes  1.05 Mbits/sec
[  3]  3.0- 4.0 sec   128 KBytes  1.05 Mbits/sec
[  3]  4.0- 5.0 sec   128 KBytes  1.05 Mbits/sec
[  3]  5.0- 6.0 sec   128 KBytes  1.05 Mbits/sec
[  3]  6.0- 7.0 sec   129 KBytes  1.06 Mbits/sec
[  3]  7.0- 8.0 sec   128 KBytes  1.05 Mbits/sec
[  3]  8.0- 9.0 sec   128 KBytes  1.05 Mbits/sec
[  3]  9.0-10.0 sec   128 KBytes  1.05 Mbits/sec
[  3]  0.0-10.0 sec  1.25 MBytes  1.05 Mbits/sec
[  3] Sent 893 datagrams
[  3] Server Report:
[  3]  0.0-10.0 sec  1.25 MBytes  1.05 Mbits/sec   0.000 ms    0/  893 (0%)

就可以看到傳輸測試的結果了, 預設是使用 1mpbs的頻寬, 可以利用 -b 參數下達指定頻寬, 例如 100k, 10m 都可以. 當然, 在 server 上也可以下 -i 1 的指令, 可以看到較為即時的訊息. 若是要持續性測試, 可以在 client 內下 -t [seconds]代表指定秒數即可.

在測試點與點間的網路品質及頻寬可以使用這個簡單工具來進行測試, 很方便好用.

目前最新版本(2011)下載連結: http://iperf.fr/download/iperf_2.0.5/iperf-2.0.5-2-win32.zip
top
TAG iperf, network, tcp, udp

iOS 7.1企業APP安裝問題

系統技術 2014/03/19 16:08
views: 608889 times
在 iOS 7.1 更新後, 原企業APP安裝會發生以下訊息:
用戶插入圖片

(無法安裝應用程式, 因為 xxxx 的憑證無效), 誰看得出來這個訊息是什麼意思, 查了一下, 發生的原因原來是因為原本在網頁上的安裝連結:
itms-services://?action=download-manifest&url=http://xxx.com.tw/xxx.plist

中的後面 url 沒有走 SSL 加密通道, 也就是 https.

如何解決這個問題, 當然, 就是改為 https://xxx.com.tw/xxx.plist 即可, 但若是沒有購買 SSL 加密憑證, 如何解決呢? 可以使用第三方的網站分享連結, 而且支援 https 的, 可以利用 dropbox 的 share link.

做法如下:

1. 將原來的 plist 檔案放在 dropbox 空間, 並生成分享連結(share link), url 會像如下:
https://www.dropbox.com/s/xxxxxxxxx/xxx.plist

2. 若上面網址沒有 https, 就自行改成 https 即可, 並將 www.dropbox.com 改為 dl.dropbox.com, 如下:
https://dl.dropbox.com/s/xxxxxxxxx/xxx.plist

3. 將原來的 itms-services:// 後的 url 改成上面 url 即可, 如下:
itms-services://?action=download-manifest&url=https://dl.dropbox.com/s/xxxxxxxxx/xxx.plist

上線即完成, 不過缺點會是這樣, 在安裝時會出現 dropbox 的安裝通知, 如下:
用戶插入圖片

若不介意 dl.dropboxusercontent.com 的這個訊息, 這就可以進行安裝了, 是用 dropbox 的 https 來解決這個 iOS 7.1 強迫要用 https 下載 plist 的問題.

繼續閱讀:
http://bencollier.net/2014/03/ios-enterprise-app-error-cannot-install-applications-because-the-certificate-is-not-valid/
http://www.cocoachina.com/bbs/read.php?tid=194213&fpage=0&toread=0&page=1

若是還沒有 dropbox 空間的朋友們, 也歡迎多利用這個 referral link 加入, 謝謝:  https://db.tt/h1NpPka3

top
TAG dropbox, iOS

PREV : [1] : [2] : [3] : [4] : [5] : ... [77] : NEXT



Sapido 精巧型網卡、無線網卡、無線分享三享機(BRD70n) EPSON LW-600P智慧型藍牙手寫標籤機 [每日好康] HP LJ  P1102w 無線雷射黑迷你黑白印表機 美國 VORNADO 533 渦流空氣循環機 (黑色) HTC One M8 16G 5吋四核心全新旗艦機 飛利浦組合式 DVD / USB超迷你音響MCD130 ASUS ZenFone 5 A501 5吋雙卡雙待智慧手機 InfoThink Micro USB X USB 雙頭讀卡機 【TIAYA】3G WIFI 分享器 SAMSUNG WB350F 21倍光學變焦超廣角數位相機(公司貨) LG Pocket photo 3.0 Hello Kitty 口袋相印機- (全球限量版) 【PAFERS】XSPIN-藍芽運動裝置 35合1掌上型麻將機2代 Canon PowerShot N 內建WiFi多角度掀背螢幕輕巧機 (公司貨) msi 微星 Enjoy 71 7吋雙核IPS平板(AML8726-MX) WD Elements  1TB USB 3.0 2.5吋外接式硬碟 Verbatim 威寶 OTG 16GB microUSB+USB3.0 雙介面高速隨身碟 (限時限量)SanDisk Ultra 32G microSDHC C10記憶卡 SanDisk 32GB Mobile Ultra microSDHC  超值組 SanDisk 32GB Ultra U1 microSDHC 附轉卡(平輸) SanDisk Extreme UHS-I 32GB記憶卡 公司貨 45MB/秒 PENTAX WG-3  F2.0大光圈防水相機組(公司貨) Transmission Micro USB OTG多功能讀卡機 Nikon S2700 6倍光學26mm超廣角數位相機(公司貨) LG Pocket photo 第二代 2.0口 袋相印機-優雅粉 Canon SELPHY CP900 內建Wi-Fi熱昇華印相機(公司貨) HP LJ P1102w 無線雷射黑迷你黑白印表機 HP LaserJet Pro CP1025nw 無線迷你彩色雷射印表機 ZyXEL合勤 電力線傳輸設備PLA4201(雙包裝) SAMSUNG WB150F 18倍變焦超廣角WIFI類單眼(平輸中文) FUJIFILM XP100 防水防震防寒防震多重防護相機(平輸中文) HTC New htc One 4.7吋四核旗艦機 - 32G 版 TOSHIBA 1TB USB3.0 2.5吋行動硬碟 瑞旭VIZIO 42吋WUSH連網系列120Hz LED液晶顯示器+視訊盒(V42E) DigiFU_Android 4.2 雲端網路電視盒 (DB550) apple MD199TA/A-APPLE TV 每朝健康 黃金燕麥茶-無糖(550mlx24入) 御茶園 每朝健康烏龍茶(650mlx24入) 御茶園 每朝健康綠茶(650mlx24入)


 Waiting...