Chrome이 파일 이름에서 '.xml' 접미사가 누락된 경우 브라우저에 표시하지 않고 localhost의 gatsby에서 제공되는 xml 파일을 다운로드/저장하려고 하는 이유는 무엇입니까?

다노즈

이것은 파일 이름에 '.xml' 접미사가 있는지 여부에 따라 웹 서버가 XML 파일에 대한 요청을 처리하는 방법에 대한 질문입니다.

미리 사과드립니다. 저는 이러한 맥락에서 웹 서버와 브라우저가 어떻게 작동하는지 잘 알지 못합니다.

나는 Gatsby 와 함께 일하면서 이 질문에 도달했습니다 . 로컬 호스트에서 개발 중입니다.

다른 호스트에서 제공되는 다른 유사한 XML 파일과 다르게 동작하는 로컬 gatsby 서비스 XML 파일을 관찰했기 때문에 질문이 제기되었습니다. 이것이 문제에 대한 빨간 청어인지 아닌지 확실하지 않습니다.


네, 읽어주셔서 감사합니다. 자세한 내용은 다음과 같습니다.

gatsby에서 제공하는 xml 파일/리소스가 있습니다(예: gatsby develop또는 사용 gatsby serve)

파일 이름을 다음과 같이 my-xml-file.xml지정한 다음 를 통해 브라우저(Chrome)에서 해당 파일 로 이동하면 http://localhost:8000/my-xml-file.xml모든 것이 정상입니다. Chrome은 이를 브라우저에 로드/표시합니다.

그러나 파일 이름을 그냥 my-xml-file, 즉 파일 이름에서 '.xml' 접미사를 제거하면 브라우저(Chrome)에서 해당 파일로 이동하려고 하면 http://localhost:8000/my-xml-fileChrome이 로드/표시하지 않습니다. 대신 이 시나리오에서 Chrome은 다른 이름으로 저장 대화 상자를 엽니다.

여기에서 무슨 일이 일어나고 있는지 어떤 아이디어가 있습니까?

이것이 나를 혼란스럽게 하는 이유는 '.xml' 접미사 없이 제공되는 xml 파일인 웹의 다른 위치로 이동하면 Chrome이 브라우저에서 이를 기꺼이 로드/표시하기 때문입니다.

예를 들어:

Chrome은 이러한 URL을 브라우저에서 직접 로드/표시합니다.

위의 예와 같이 파일 이름에 .xml 접미사가 없는 xml 파일을 제공할 때와 다른 사이트에서 제공할 때의 동작이 다른 이유는 무엇입니까?


이것을 알아내기 위해 내가 지금까지 시도한 것들.

다노즈

응답 헤더에 대한 조사를 기반으로 답변을 찾은 것 같습니다.

에 대한 값 content-type은 xml 리소스에 대해 적절하게 설정되어야 합니다.

내 로컬 호스트에서 이름에 '.xml' 접미사가 없는 파일은 application/octet-stream.

그것은 아마도 application/rss+xml; charset=utf-8또는 아마도 같은 것으로 제공되어야 합니다 application/xml.

아직 확인할 기회가 없었습니다. 확인되면 다시 보고하겠습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

TOP 리스트

  1. 1

    Ionic 2 로더가 적시에 표시되지 않음

  2. 2

    JSoup javax.net.ssl.SSLHandshakeException : <url>과 일치하는 주체 대체 DNS 이름이 없습니다.

  3. 3

    std :: regex의 일관성없는 동작

  4. 4

    Xcode10 유효성 검사 : 이미지에 투명성이 없지만 여전히 수락되지 않습니까?

  5. 5

    java.lang.UnsatisfiedLinkError : 지정된 모듈을 찾을 수 없습니다

  6. 6

    rclone으로 원격 디렉토리의 모든 파일을 삭제하는 방법은 무엇입니까?

  7. 7

    상황에 맞는 메뉴 색상

  8. 8

    SMTPException : 전송 연결에서 데이터를 읽을 수 없음 : net_io_connectionclosed

  9. 9

    정점 셰이더에서 카메라에서 개체까지의 XY 거리

  10. 10

    Windows cmd를 통해 Anaconda 환경에서 Python 스크립트 실행

  11. 11

    다음 컨트롤이 추가되었지만 사용할 수 없습니다.

  12. 12

    C #에서 'System.DBNull'형식의 개체를 'System.String'형식으로 캐스팅 할 수 없습니다.

  13. 13

    JNDI를 사용하여 Spring Boot에서 다중 데이터 소스 구성

  14. 14

    Cassandra에서 버전이 지정된 계층의 효율적인 모델링

  15. 15

    복사 / 붙여 넣기 비활성화

  16. 16

    Android Kotlin은 다른 활동에서 함수를 호출합니다.

  17. 17

    Google Play Console에서 '예기치 않은 오류가 발생했습니다. 나중에 다시 시도해주세요. (7100000)'오류를 수정하는 방법은 무엇입니까?

  18. 18

    SQL Server-현명한 데이터 문제 받기

  19. 19

    Seaborn에서 축 제목 숨기기

  20. 20

    ArrayBufferLike의 typescript 정의의 깊은 의미

  21. 21

    Kubernetes Horizontal Pod Autoscaler (HPA) 테스트

뜨겁다태그

보관