2017-04-25 3 views
1
내가 API를 가져올 사용하여 .md 파일을로드 할

에 파싱 사용하여 원격으로 파일을 md를하고 난 문제를 가져 오기를 통해 파일을 잡는 데 marked로드 API를 가져오고 클라이언트/브라우저

을 사용하여 분석 할 필요가 api, 나는 response.blob()response.arrayBuffer()으로 아무것도 돌려주지 못합니다.

fetch('http://s3.amazon.com/some_bucket/some_file.md') 
.then(response => response.blob()) 
.then(result => console.log(result)); 

결과를 가져 와서 반응 요소로 전달하여 렌더링하고 싶습니다. 나는 그것을 (npm에서) 표시된 것을 사용하여 파싱 할 것이다.

도움을 주시면 감사하겠습니다.

답변

1

No 'Access-Control-Allow-Origin' header is present on the requested resource. 오류 응답이 표시된다고 가정합니다. 즉, 도메인 간 요청을하고 있으므로 Same-origin policy을 위반했습니다.

기본적으로 S3 버킷에서 CORS (Cross-Origin Resource Sharing)를 사용하도록 설정해야합니다. 정확하게하는 방법은 read here입니다.

fetch('https://crossorigin.me/http://s3.amazon.com/some_bucket/some_file.md') 
.then(response => response.blob()) 
.then(result => console.log(result)); 

요청이 성공해야한다 :

또한, 단지 간단한 테스트로, 당신은 당신이이 같은 https://crossorigin.me/ 술책을하려는 URL 접두사 수 있습니다. 이것은 테스트 용입니다.

+0

응답 해 주셔서 감사합니다. 실제로 오류가 발생하지는 않습니다. 브라우저에 링크를 추가하면 파일을 직접 다운로드 할 수 있습니다. –

+0

사실 당신은 옳았습니다. 그것은 코러스 오류였습니다, 감사합니다. –