【问题标题】:java.net.URISyntaxException: Illegal character in scheme namejava.net.URISyntaxException:方案名称中的非法字符
【发布时间】:2021-08-27 11:09:31
【问题描述】:

我有这个卷发:

curl -i --user 'nuni:Iconi1080!' --noproxy '*' -H "Content-Type: application/json" -XPOST "https://intratest.com/services/tomcat/v2/server/deploy" -d '{"user": "nuni" ,"name": "pol", "isName": "nuni8", "envName": "Dv", "tomcatEnvironment": "task", "applicationVersion": "0.0.1"}'

但是当我运行它时认为 Intelil 我有这个错误:

java.net.URISyntaxException: Illegal character in scheme name at index 4:

【问题讨论】:

  • 您能指定如何通过 IntelliJ 运行 curl 命令吗?给出的异常仅表明某些 java 代码尝试解析未按预期以“https://”开头的字符串。它可能试图错误地解析“curl -i ...”吗?在 IntelliJ 中,执行 http 命令的最佳方式是使用 .http 请求文件,该文件提供了方便的 curl 转换工具(参见 jetbrains.com/help/idea/…

标签: curl intellij-idea


【解决方案1】:

我认为您在 https: 之前或之后有一些空格,您应该删除它们。

【讨论】:

    【解决方案2】:

    您尚未提供 java 代码,但通过检查您共享的 cURL,我可以看到您在 JSON 数据部分中的“pol”一词之后缺少“。所以基本上,JSON 似乎已损坏,这可能稍后在您的 Java 应用中提出问题。

    【讨论】:

    • 没有java代码,我从命令行或者Intellij窗口运行
    • 在 pol 之后添加引号对您有用吗? cURL 命令使用凭据将有效负载发送到test.com/services/tomcat/v2/server/deploy。这个端点背后的代码是什么。我相信异常是从那里提出的
    • 我添加了同样的结果
    • test.com/services/tomcat/v2/server/deploy 看起来不像您正在使用的实际端点。您在开发环境中是否指向不同的端点?我看到您在问题中编辑了 JSON 数据有效负载,这很好,但如果问题仍然存在,我仍然认为我们需要了解端点部分发生了什么,因为异常似乎从那里冒泡。请尝试提供更多信息。
    • 好的,您是否为此端点编写了代码?你能分享吗?我想看看您的代码中是否有任何部分使用 new URL(...) 或 new URI(...) - 并检查提供给它的实际 URI/URL。这可能是一个表明 url/uri 字符串编码不正确的问题。见这里例如stackoverflow.com/questions/749709/…
    猜你喜欢
    • 1970-01-01
    • 2023-04-04
    • 2016-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    相关资源
    最近更新 更多