0
http get을 사용하여 Java 코드에서 wordnet의 끝점을 쿼리하려고합니다. "wordnet.rkbexplorer.com"엔드 포인트에 연결이되지만 sparsql- 쿼리가 올바르지 않은 오류가 발생합니다. 검색어 자체는 wordnet.rkbexplorer.com의 웹 사이트에 입력 할 때 실행됩니다. GTTP에 대한 URL의 구문이 올바르지 않습니까? 나는 그 지역에서 많은 경험을하지 못했다.WordNet 및 HTTP GET
내 코드 :
URL url = new URL("http://wordnet.rkbexplorer.com/sparql/?query="+query);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("GET");
String query = "PREFIX id: <http://wordnet.rkbexplorer.com/id/> "
+ "PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> "
+ "SELECT * WHERE { ?s rdfs:label ?o } LIMIT 10";
오류는 :
error at URI 3store:default#:1 - syntax error, unexpected $end, expecting identifier
안녕 다니엘. 엔드 포인트의 웹 사이트에는 http get이 가능하다는 정보가 있습니다. "/ sparql /? query = ...에 HTTP GET 요청을 할 수도 있습니다." 나는 그것을 시험해보고 싶다. HTTP POST에 대한 Java 코드가 작동하지만 어쩌면 내가 찾을 수없는 http get에 대한 약간의 오류가있을 수 있습니다. – Salvadora
이것은 GET 요청의 인코딩 문제인 것 같습니다. 예를 들어,이 작품은 다음과 같습니다. curl "http://southampton.rkbexplorer.com/sparql/?query=PREFIX+rdfs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema "% 23 % 3E % 0D % 0ASELECT + * + WHERE + % 7B + % 3Fs + rdfs % 3A 라벨 + % 3Fo + % 7D + LIMIT + 10 % 0D % 0A % 0D % 0A" –
다음을 추가하면 해결되는 문제 : query = URLEncoder.encode (query, "UTF-8"). 또한 인코딩이 문제라고 생각했지만 의견은 도움이되었습니다. Daniel 감사합니다! – Salvadora