迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Java >

Java 错误 Invalid Character Found in Method Name. HTTP Method Names Must Be Tokens

作者:迹忆客 最近更新:2023/07/07 浏览次数:

本篇文章将介绍 Tomcat 的一些可能的原因和解决方案:java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens


Tomcat 的 java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens 原因

以下是导致错误发生的一些可能情况。

当用户尝试在未启用 HTTPS 的端点上执行来自客户端的 HTTPS 请求时,可能会遇到此异常。 当服务器只关注原始数据时,客户端会对请求的数据进行加密。

换句话说,每当服务器预期的内容与收到的内容之间存在差异时,通常就会发生这些异常。 您刚才所描述的就是众多可想象的结果之一。

您的服务器可能有一个不符合 HTTPS 标准的端点。

在某些情况下,Content-Length 标头的值与正文的长度不对应。

当您尝试在部署应用程序的服务器上使用不支持的 URI 方案时,通常会发生此错误。


Tomcat 中 java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens 的解决方案

下面列出了可以应用的解决问题的选项。

  1. 将客户端 URL 中的 https 替换为 http。 这样做很可能会有效。 例如,如果使用 http://localhost:8080/foo/bar 访问本地服务器,则使用 URL https://localhost:8080/foo/bar 来访问它。
  2. 按 Ctrl + Shift + Delete 控件清除浏览数据,然后单击“清除数据”,如代码片段所示。

    清除网络浏览器中的浏览数据

  3. 清除 SSL 状态 由于无法从 PC 上 Google Chrome 的浏览器设置内部删除 SSL 状态,因此必须通过操作系统的设置来完成此操作。 因此,请按照以下说明清除 SSL 状态。
    • 在开始菜单中,搜索“Internet 选项”并将其打开。

      在开始菜单中打开内部选项

    • 单击出现的对话框中的“内容”选项卡。

      单击互联网属性中的内容选项卡

    • 单击清除 SSL 状态按钮。

      单击 Internet 属性中内容选项卡下的清除 ssl 状态

    • 单击“确定”,SSL 状态将被清除。

      ssl 缓存已清除

  4. 为应用程序配置https协议,需要证书。 Let's Encrypt 是一个可以为您提供证书的资源。 生成和获取自签名证书的过程是最简单的选择。
    • 首先为应用程序创建一个密钥库文件。 该文件的功能更像是 https 协议的自签名证书。
      sudo keytool -genkey -keyalg RSA -alias tomcat -Keystore /usr/share/tomcat.keystore
      
    • 接下来,在 Tomcat 服务器配置文件 (/opt/tomcat/conf/server.xml) 中,为应用程序添加 https Tomcat 服务器连接器:
      sudo nano /opt/tomcat/conf/server.xml
      
    • 通过添加以下内容来完成应用程序的设置。 请注意,已提供密钥库文件的路径和密码。 此外,还指定了与 http 端口分开的 https 端口。
      <Connector protocol="org.apache.coyote.http11.Http11Protocol"
      port="8443" maxThreads="200" scheme="https"
      secure="true" SSLEnabled="true"
      keystoreFile="/usr/share/tomcat.keystore"
      keystorePass="my-password"
      clientAuth="false" sslProtocol="TLS"
      URIEncoding="UTF-8"
      compression="force"
      compressableMimeType="text/html,text/xml,text/plain,text/javascript,text/css"/>
      

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Java 错误 Java.Net.SocketException: Network Is Unreachable

发布时间:2023/07/16 浏览次数:963 分类:Java

今天我们就来讨论一下Java编程时出现java.net.SocketException: Network is unreachable异常的可能原因及解决方法。Java中出现java.net.SocketException: Network is unreachable的可能原因及解决方案

Java 错误 Java.Net.ConnectException: Connection Timed Out

发布时间:2023/07/16 浏览次数:235 分类:Java

本篇文章将重点介绍如何使用此包进行基本的网络调用以及可能面临和解决的错误。在 Java 中使用 java.net 进行网络调用 进行网络调用是 Java 开发人员每天面临的最重要的事情之一。

Java 错误 Java.Security.InvalidKeyException: Illegal Key Size

发布时间:2023/07/15 浏览次数:644 分类:Java

本篇文章介绍包含 java.security.InvalidKeyException: Illegal key size 的 Java 代码。 然后,我们将了解其可能的原因。最后,它通过消除指定的错误来引导我们找到解决方案。

Java 中错误 Unsupported Major Minor Version

发布时间:2023/07/14 浏览次数:133 分类:Java

出现 Unsupported Major.minor version 错误或 Java.lang.UnsupportedClassVersionError 的原因是运行时 JDK 较低,编译时 JDK 较高。 本篇文章介绍如何解决Java中不支持的major.minor版本。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便