有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

使用URLFetchService/URL Google appengine for java

我正在使用URL获取Java API http://code.google.com/appengine/docs/java/urlfetch/overview.html#Fet。。。 从图表中获取信息。脸谱网。然而,我一直在 错误是: JAVAlang.IllegalArgumentException 在爪哇。网乌里。创建(URI.java:842) ... 原因:java。网URISyntaxException:处查询中的非法字符 索引58:https://graph.facebook.com/me?access_token=。。。 知道吗


共 (1) 个答案

  1. # 1 楼答案

    错误消息几乎说明了一切:您试图获取的URI在索引58处包含非法字符。你的URL也有例外:

    public static void main(String[] args) throws Exception {
    
        String s = "https://graph.facebook.com/me?access_token=593172238640599|e2a5e8bb8625b56358fe6219.1-530295086|zt7TYKmSF4e3WLWbF8jc7_P8MK8";
    
        URI uri = new URI(s);
    
    }
    

    抛出:

    Exception in thread "main" java.net.URISyntaxException: Illegal character in query at index 58: https://graph.facebook.com/me?access_token=593172238640599|e2a5e8bb8625b56358fe6219.1-530295086|zt7TYKmSF4e3WLWbF8jc7_P8MK8 at java.net.URI$Parser.fail(URI.java:2809) at java.net.URI$Parser.checkChars(URI.java:2982) at java.net.URI$Parser.parseHierarchical(URI.java:3072) at java.net.URI$Parser.parse(URI.java:3014) at java.net.URI.(URI.java:578)

    位置58处的字符是“|”字符。您需要对这个字符(以及它的其他情况)进行URL编码