<div><b><font size="6">1. 서버측 코드</font></b></div> <div><br></div> <div>var express = require('express');</div> <div>var app = express();</div> <div><br></div> <div>var multer = require('multer');</div> <div>var storage = multer.diskStorage({</div> <div> destination: function(req, file, cb){</div> <div> cb(null, 'uploads/');</div> <div> },</div> <div> filename: function(req, file, cb){</div> <div> cb(null, file.originalname);</div> <div> }</div> <div>});</div> <div>var upload = multer({storage : storage});</div> <div><br></div> <div>app.listen(3000, function(){</div> <div> console.log("Connected 3000 port!!");</div> <div>});</div> <div><br></div> <div>app.use(express.static('client'));</div> <div><br></div> <div>app.post('/Graph_UI.html', upload.single('JsonFile'), function(req, res){</div> <div><br></div> <div>});</div> <div><br></div> <div>app.get('/', function(req, res){</div> <div><br></div> <div>});</div> <div><br></div> <div><br></div> <div><br></div> <div><br></div> <div><b><font size="6">2. 클라이언트 메인페이지 코드</font></b></div> <div><br></div> <div> <div><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "<a target="_blank" href="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd</a>"></div> <div><html></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><head></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><meta http-equiv="Content-type" content="text/html; charset=UTF-8"></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><title>Graph UI</title></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><style type="text/css"></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>body</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>margin: 0px;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>#box</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>position: relative;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>height: auto;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>margin: auto;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>#left</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>position: relative;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>width: 20%;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>float: left;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>#right</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>position: relative;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>width: 80%;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>float: left;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></style></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></head></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><body></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><script src="<a target="_blank" href="http://code.jquery.com/jquery-latest.min.js">http://code.jquery.com/jquery-latest.min.js</a>"></script></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><script src="Updater.js"></script> <!-- 파일 불러오기 --></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><script src="ReadJson.js"></script><span class="Apple-tab-span" style="white-space:pre;"> </span><!-- JSON 데이터 불러오기 --></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><div id="box"></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><div id="left"></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><p></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><input type="hidden" id="FileName"></input></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><form action="Graph_UI.html" method="post" enctype="multipart/form-data"></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><input type="file" value="파일 선택" name="JsonFile" id="File_Reader"></input></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><input type="submit" onclick="ReadJson();"></input></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></form></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></p></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><p></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><form name="form1"></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><select size=50 id="Sentences" style="width:90%; height:70%" onclick="Updater(this.value);"></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></select></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></form></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></p></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><div id="right"></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><br>그래프 자리</br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></body></div> <div></html></div></div> <div><br></div> <div><br></div> <div><font size="6"><b><br></b></font></div> <div><font size="6"><b>3. JSON파일 불러오는 코드</b></font></div> <div><br></div> <div> <div>function ReadJson()</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var URL, headidx, endidx, senText, filename;</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>URL = document.getElementById("File_Reader").value;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>headidx = URL.lastIndexOf('\\');</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>endidx = URL.length;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>filename = URL.substring(headidx+1, endidx);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>document.getElementById("FileName").value = filename;</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>$.ajax({</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>crossOrigin: true,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>type: "GET",</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>url: "127.0.0.1:3000/uploads/"+filename,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>datatype: "JSON",</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>success : function(data){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>$(data.sentence).each(function(index, value){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>console.log(value.text);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var datas = value.text;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var selector = document.getElementById("Sentences");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var op = document.createElement("option");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>op.text = datas;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>op.value = filename + "." + value.id;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>selector.options.add(op);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>console.log(op);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>});</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>});</div> <div>};</div></div> <div><br></div> <div><br></div> <div>위 코드를 실행해서 파일을 불러와 서버에 업로드 후 그 파일을 다시 불러오면</div> <div><br></div> <div>XMLHttpRequest cannot load %3127.0.0.1:3000/uploads/aa.json. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.</div> <div><br></div> <div>이런 오류가 나는데 찾아보니 크로스도메인문제라더군요...</div> <div>해결법이란거 다 해봐도 안되던데 어떻게 해야할까요</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.