作者gh8811211 (大熊)
看板java
标题[问题] 写档案到伺服器上之文字档
时间Thu Jul 19 20:34:15 2012
从伺服器上读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
1F:推 LaPass:...................... 07/19 20:37
※ 编辑: gh8811211 来自: 180.218.236.86 (07/19 20:38)
2F:→ gh8811211:请问一楼在点什麽? 07/19 20:38
3F:推 LaPass:你认真想一下这对伺服器是多危险的事.... 07/19 20:42
4F:→ gh8811211:我自己的程式,只是要有一个纪录档存在伺服器,以便 07/19 20:43
5F:→ gh8811211:client端抓取纪录而已,哪里有危险问题 07/19 20:45
6F:→ gh8811211:而且我也不是问这程式码会不会对伺服器造成危险 07/19 20:46
7F:推 LaPass:不.... 是伺服器端根本不可能让别人这样写,原本就是这样设 07/19 20:48
8F:→ gh8811211:那我要把记录存在伺服器端 有什麽好建议吗? 07/19 20:49
9F:推 LaPass:如果你的伺服器是用HTTP,那就用POST传上去 07/19 20:53
10F:→ gh8811211:那不就还要一个网页档案接收? 07/19 21:02
11F:推 LaPass:是 07/19 21:11
12F:→ gh8811211:不懂网页post = = 07/19 21:20
13F:→ gh8811211:请问是否有简单范例档可以借我参考? 07/19 21:32
14F:推 PsMonkey:google java fileupload 07/19 21:43
15F:→ neverfly:要是控制的好,不觉得跟上传档案比起来会比较危险 07/19 22:02
16F:→ neverfly:错误讯息叫你call setDoOutput(true),为什麽不试试? 07/19 22:03
17F:→ awert:这样只是和server做http request ._. 07/19 22:32
18F:→ roden:看到URL我就笑了... 07/19 23:16
19F:推 LaPass:楼上懂我在1f在点了什麽吧... 我已经不是第一次看到有人想 07/19 23:25
20F:→ LaPass:从url写入档案了.... 07/19 23:27
21F:→ darkk6:我倒是第一次看到... 当下反应也是点点点... 07/19 23:57
22F:推 pupuliao:煞气阿....能这样写入 就天下大乱了 07/20 01:51
23F:→ bitlife:很多色狼也希望只要有美女的地址就能写入裆暗 07/20 07:11
24F:→ gh8811211:请问 neverfly , setDoOutput在哪里修改? 07/20 15:18
25F:→ gh8811211:setDoOutput(true)之後没错误了,不过并没有写入档案 07/20 15:25
26F:推 LaPass:楼上,请看 awert:这样只是和server做http request ._. 07/20 16:01
27F:→ qrtt1:那不是答案,不要看到稻草当浮木乱抓啊。 07/20 16:48
28F:→ dennisxkimo:我会想到web service方式来达成 07/20 20:35
29F:推 peanut97:请问用url的方式会对伺服器造成什麽危险吗? 有例子吗? 07/20 23:18
30F:推 LaPass:即使不用URL,用post也可能会出现漏洞的,例如使用者POST一 07/20 23:20
31F:→ LaPass:个hack.jsp档案上去,伺服器又丢在 xxx.xxx/file/hack.jsp 07/20 23:22
32F:推 LaPass:的外连路径,那使用者就可以对伺服器做任何事了。 07/20 23:25
33F:→ LaPass:还有,不会有例子,因为HTTP根本不让人这样写入挡案。 07/20 23:29
34F:推 LaPass:在cmd那边打 telnet google.com 80 看看,这就是http的底层 07/20 23:42
35F:→ neverfly:喔,没仔细看code,我以为是在写server side的程式 07/21 09:19
36F:→ TaiwanXDman:如果能这样写 每个人只要知道你URL 全给你写你就爆了 07/22 00:18
37F:推 pupuliao:根本就没搞顶 http 的运作方式阿...他只是供应档案 07/22 11:50
38F:推 pupuliao:要是能写入,那就任何人都可以进去改了,这怎麽可能 07/22 11:52
39F:推 peanut97:还是不懂要怎麽写才能把server写爆? 写爆的意思是? 07/23 00:21
40F:推 LaPass:我放弃.... 有请楼下解释 07/23 00:49
41F:推 psplay:就丢几个程式轮流写入文字到你家伺服器 07/23 08:12
42F:推 psplay:挂几个小时後你们家伺服器的硬碟就爆了 07/23 08:14
43F:→ psplay:第二个方式就是写成.jsp 利用单机指令搞爆你们家伺服器... 07/23 08:16
44F:推 ping1777:庄园文化ˊ_>ˋ? 07/23 10:53
45F:推 jinmin88:之前发生惨烈的例子 被骇客上传aspxspy 网页板admin 07/23 15:02
46F:→ jinmin88:通常都是给外包厂商写的留言板或上传区才有的问题=.= 07/23 15:04