Java 오류 메서드 이름에 잘못된 문자가 있습니다. HTTP 메서드 이름은 토큰이어야 합니다.
-
Tomcat의 원인: java.lang.IllegalArgumentException: 메서드 이름에 잘못된 문자가 있습니다. HTTP 메서드 이름은 토큰이어야 합니다.
오류 -
Tomcat: java.lang.IllegalArgumentException: 메서드 이름에 잘못된 문자가 있습니다. HTTP 메서드 이름은 토큰이어야 합니다.
오류
튜토리얼에서는 Tomcat: java.lang.IllegalArgumentException: Invalid character found in method name에 대한 몇 가지 가능한 원인과 해결책에 대해 설명합니다. HTTP 메서드 이름은 토큰이어야 합니다
.
Tomcat의 원인: java.lang.IllegalArgumentException: 메서드 이름에 잘못된 문자가 있습니다. HTTP 메서드 이름은 토큰이어야 합니다.
오류
다음은 오류가 발생하는 이유에 대한 몇 가지 가능한 시나리오입니다.
-
사용자는
HTTPS
가 활성화되지 않은 엔드포인트에서 클라이언트의HTTPS
요청을 실행하려고 시도할 때 이 예외를 실행할 수 있습니다. 클라이언트는 서버가 원시 데이터에만 집중할 때 요청된 데이터를 암호화합니다. -
달리 말하면 이러한 예외는 일반적으로 서버가 예상하는 것과 수신하는 것 사이에 차이가 있을 때마다 발생합니다. 생각할 수 있는 많은 결과 중 하나는 방금 설명한 것입니다.
서버에
HTTPS
표준을 준수하지 않는 엔드포인트가 있을 수 있습니다. -
경우에 따라
Content-Length
헤더 값이 본문 길이와 일치하지 않았습니다. -
이 오류는 응용 프로그램이 배포된 서버에서 이를 지원하지 않는
URI
구성표를 사용하려고 할 때 자주 발생합니다.
Tomcat: java.lang.IllegalArgumentException: 메서드 이름에 잘못된 문자가 있습니다. HTTP 메서드 이름은 토큰이어야 합니다.
오류
적용할 수 있는 문제를 해결하기 위한 옵션이 아래에 나열되어 있습니다.
-
클라이언트의 URL에서
https
를http
로 바꿉니다. 아마도 그렇게 하는 것이 효과적일 것입니다. 예를 들어http://localhost:8080/foo/bar
로 로컬 서버에 액세스하는 경우https://localhost:8080/foo/bar
URL을 사용하여 액세스합니다. -
스니펫에 표시된 대로
Ctrl
+Shift
+Delete
컨트롤을 누른 다음데이터 지우기
를 클릭하여 검색 데이터를 지웁니다.
-
SSL 상태
지우기SSL 상태
는 PC의 Google Chrome 브라우저 설정에서 제거할 수 없으므로 운영 체제 설정을 통해 제거해야 합니다. 따라서 다음 지침에 따라SSL 상태
를 지우십시오.- 시작 메뉴에서
인터넷 옵션
을 검색하여 엽니다.
- 나타나는 대화 상자에서
콘텐츠 탭
을 클릭합니다.
SSL 상태 지우기
버튼을 클릭합니다.
확인
을 클릭하면 SSL 상태가 해제됩니다.
- 시작 메뉴에서
-
인증서가 필요한 애플리케이션에 대해
https
프로토콜을 구성합니다.Let's Encrypt
는 인증서를 제공할 수 있는 리소스입니다. 자체 서명된 인증서를 생성하고 획득하는 프로세스가 가장 간단한 옵션입니다.- 먼저 애플리케이션에 대한
Keystore
파일을 생성합니다. 이 파일은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
- 다음을 포함하여 앱 설정을 완료합니다.
Keystore
파일의path
및password
가 모두 제공됩니다. 또한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"/>
- 먼저 애플리케이션에 대한
I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.
LinkedIn