[問題] 寫檔案到伺服器上之文字檔

看板java作者 (大熊)時間12年前 (2012/07/19 20:34), 編輯推噓21(21025)
留言46則, 16人參與, 最新討論串1/2 (看更多)
從伺服器上讀txt檔案是成功的 但不知道為什麼一樣的方法要把txt寫入伺服器上就是不行 程式碼: URL url; try { url = new URL("http://XXX.xxx.xxx.xxx/XXX/data.txt"); URLConnection connection = url.openConnection(); OutputStream outStream = connection.getOutputStream(); BufferedWriter br = new BufferedWriter(new OutputStreamWriter(outStream)); br.write("test"); br.close(); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } 錯誤訊息在第五行 java.net.ProtocolException: cannot write to a URLConnection if doOutput=false - call setDoOutput(true) 想請問這是怎麼一回事? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 180.218.236.86

07/19 20:37, , 1F
......................
07/19 20:37, 1F
※ 編輯: gh8811211 來自: 180.218.236.86 (07/19 20:38)

07/19 20:38, , 2F
請問一樓在點什麼?
07/19 20:38, 2F

07/19 20:42, , 3F
妳認真想一下這對伺服器是多危險的事....
07/19 20:42, 3F

07/19 20:43, , 4F
我自己的程式,只是要有一個紀錄檔存在伺服器,以便
07/19 20:43, 4F

07/19 20:45, , 5F
client端抓取紀錄而已,哪裡有危險問題
07/19 20:45, 5F

07/19 20:46, , 6F
而且我也不是問這程式碼會不會對伺服器造成危險
07/19 20:46, 6F

07/19 20:48, , 7F
不.... 是伺服器端根本不可能讓別人這樣寫,原本就是這樣設
07/19 20:48, 7F

07/19 20:49, , 8F
那我要把記錄存在伺服器端 有什麼好建議嗎?
07/19 20:49, 8F

07/19 20:53, , 9F
如果你的伺服器是用HTTP,那就用POST傳上去
07/19 20:53, 9F

07/19 21:02, , 10F
那不就還要一個網頁檔案接收?
07/19 21:02, 10F

07/19 21:11, , 11F
07/19 21:11, 11F

07/19 21:20, , 12F
不懂網頁post = =
07/19 21:20, 12F

07/19 21:32, , 13F
請問是否有簡單範例檔可以借我參考?
07/19 21:32, 13F

07/19 21:43, , 14F
google java fileupload
07/19 21:43, 14F

07/19 22:02, , 15F
要是控制的好,不覺得跟上傳檔案比起來會比較危險
07/19 22:02, 15F

07/19 22:03, , 16F
錯誤訊息叫你call setDoOutput(true),為什麼不試試?
07/19 22:03, 16F

07/19 22:32, , 17F
這樣只是和server做http request ._.
07/19 22:32, 17F

07/19 23:16, , 18F
看到URL我就笑了...
07/19 23:16, 18F

07/19 23:25, , 19F
樓上懂我在1f在點了什麼吧... 我已經不是第一次看到有人想
07/19 23:25, 19F

07/19 23:27, , 20F
從url寫入檔案了....
07/19 23:27, 20F

07/19 23:57, , 21F
我倒是第一次看到... 當下反應也是點點點...
07/19 23:57, 21F

07/20 01:51, , 22F
煞氣阿....能這樣寫入 就天下大亂了
07/20 01:51, 22F

07/20 07:11, , 23F
很多色狼也希望只要有美女的地址就能寫入襠暗
07/20 07:11, 23F

07/20 15:18, , 24F
請問 neverfly , setDoOutput在哪裡修改?
07/20 15:18, 24F

07/20 15:25, , 25F
setDoOutput(true)之後沒錯誤了,不過並沒有寫入檔案
07/20 15:25, 25F

07/20 16:01, , 26F
樓上,請看 awert:這樣只是和server做http request ._.
07/20 16:01, 26F

07/20 16:48, , 27F
那不是答案,不要看到稻草當浮木亂抓啊。
07/20 16:48, 27F

07/20 20:35, , 28F
我會想到web service方式來達成
07/20 20:35, 28F

07/20 23:18, , 29F
請問用url的方式會對伺服器造成什麼危險嗎? 有例子嗎?
07/20 23:18, 29F

07/20 23:20, , 30F
即使不用URL,用post也可能會出現漏洞的,例如使用者POST一
07/20 23:20, 30F

07/20 23:22, , 31F
個hack.jsp檔案上去,伺服器又丟在 xxx.xxx/file/hack.jsp
07/20 23:22, 31F

07/20 23:25, , 32F
的外連路徑,那使用者就可以對伺服器做任何事了。
07/20 23:25, 32F

07/20 23:29, , 33F
還有,不會有例子,因為HTTP根本不讓人這樣寫入擋案。
07/20 23:29, 33F

07/20 23:42, , 34F
在cmd那邊打 telnet google.com 80 看看,這就是http的底層
07/20 23:42, 34F

07/21 09:19, , 35F
喔,沒仔細看code,我以為是在寫server side的程式
07/21 09:19, 35F

07/22 00:18, , 36F
如果能這樣寫 每個人只要知道你URL 全給你寫你就爆了
07/22 00:18, 36F

07/22 11:50, , 37F
根本就沒搞頂 http 的運作方式阿...他只是供應檔案
07/22 11:50, 37F

07/22 11:52, , 38F
要是能寫入,那就任何人都可以進去改了,這怎麼可能
07/22 11:52, 38F

07/23 00:21, , 39F
還是不懂要怎麼寫才能把server寫爆? 寫爆的意思是?
07/23 00:21, 39F

07/23 00:49, , 40F
我放棄.... 有請樓下解釋
07/23 00:49, 40F

07/23 08:12, , 41F
就丟幾個程式輪流寫入文字到你家伺服器
07/23 08:12, 41F

07/23 08:14, , 42F
掛幾個小時後你們家伺服器的硬碟就爆了
07/23 08:14, 42F

07/23 08:16, , 43F
第二個方式就是寫成.jsp 利用單機指令搞爆你們家伺服器...
07/23 08:16, 43F

07/23 10:53, , 44F
莊園文化ˊ_>ˋ?
07/23 10:53, 44F

07/23 15:02, , 45F
之前發生慘烈的例子 被駭客上傳aspxspy 網頁板admin
07/23 15:02, 45F

07/23 15:04, , 46F
通常都是給外包廠商寫的留言板或上傳區才有的問題=.=
07/23 15:04, 46F
文章代碼(AID): #1G1_xAoR (java)
文章代碼(AID): #1G1_xAoR (java)