Thin Web Server是Ruby語言的web服務器應用,本文我們來講講Thin Web Server與NodeJS配合問題,當下Ruby語言在程序員之間很是火熱,開源社區也是不斷的有新的Ruby應用,Thin 和 Sinatra 就是這百家爭鳴時代的佼佼者.
不過新的事物總是有一個成熟期,就像任何升級都是有代價一樣,Sinatra和Thin配合起來,在一些場景下存在問題.
筆者遇到的情況是這樣的,筆者的應用結構如下:
Web Browser --> NodeJS --> Thin --> Sinatra
問題就出現在 NodeJS --> Thin 這條路徑上:Thin解析NodeJS發送的JSON數據出錯,Thin收到的JSON數據,會在原始數據頭尾分別加上一串數字,樣例如下:
- 88
- {"xx":"a","yy":"b"}
- 0
通過Google搜索解決方法,發現是NodeJS與Thin兩者不兼容,解決這個問題的方法就是NodeJS和Thin選其一,后來筆者還是換掉了Thin,使用Ruby原生的Web容器Webrick,在Sinatra中使用Webrick的方式為:rackup -p 8090 -s webrick
新聞熱點
疑難解答