명령 줄에서 send-anywhere.com
을 사용하기 위해 Crystal에서 CLI 도구를 빌드하려고했습니다.curl을 사용하여 여러 파일을 send-anywhere.com으로 보내지 못했습니다.
멀티 파트는 Crystal에 내장되어 있지 않지만 필자 자신의 글을 쓰기 전에는 cURL을 사용하여 얼마나 정확하게 만들어야하는지 생각했지만 필자는 그것을 cURL과 함께 사용할 수 없다고 생각했습니다!
두 개 이상의 파일을 cURL로 보낼 때 해당 서버는 수신되는 파일이 하나 뿐이며 전체 길이를 볼 수는 있지만 하나의 파일 만 기대하기 때문에 50 %에서 실패합니다.
나를 죽이는 것은 브라우저에서 작동한다는 것입니다. 네트워크 관리자가 열려 있고 내 cURL 요청과의 차이점을 보지 못했습니다. Expect 헤더를 100으로 계속 설정하려고 시도했지만 비교해 보았지만 브라우저에서 효과가 있고 말려 있지 않은 것은 무엇인지 알 수 없습니다.
가 여기에 내가 컬 같은 결과 모두와 함께 시도 명령이다, 서버는 테스트를 위해 나는 일반적인 라이센스 파일의 몇 사본을 사용하고 있지 2.
들어오는 단지 1 파일을보고 끝납니다.
curl -F [email protected] -F [email protected] https://...their.weblink...
내가 파일 이름 = "[] 파일"내용 - 처리에, 그래서 (같은 결과) 그것을 자신을 시도 크롬이 이름을 관리자에서 본 적이 : 또한
curl -F file[][email protected] -F file[][email protected] https://...their.weblink...
내가 동일한 결과를 가지고 -H "Expect: 100-continue"
을 사용하여이 두 명령을 시도했습니다.
이 시점에서 나는 미쳤어. 나는 그것을 나 자신으로 시도 할 것이라고 생각했다. 아마 cURL은 제대로 할 수 없을 것이다. (매우 가능성은 낮다. https://github.com/hangyas/TelegramBot/blob/b3fcbbb621bd669bbafe9f3e91364702d06d1e10/src/TelegramBot/http_client_multipart.cr
그것은 꽤 간단합니다하지만 난 여전히 같은 문제를 얻을 :
그래서 처음부터 쓰기 전에 나는 봇 여기에서 볼 전보에 의해 사용되었다 구현을 시도했다. 첫 번째 파일 만 인식됩니다.
참고 : 하나의 파일 만 전송할 때 cURL과 Crystal 구현 모두에 문제가 없습니다.
저는 미쳐 가고 있습니다. 작동하는 브라우저와 다른 브라우저의 차이점은 무엇입니까? 나는 무엇을 보지 못하니?
나는 구현을 찾고있는 것이 아니라, 내가 놓친 것을 지적하기 위해 여러 파일을 올바르게 인식하게 할 수 있습니까?
mutlipart는 표준 라이브러리에 곧 포함되어야합니다 (https : // github 참조).com/crystal-lang/crystal/pull/2967 –
@ JonneHaß 그래, 나는 잠시 동안 그 문제를 따라 왔다는 것을 알고있다! 그러나 나는 그것이 내가 가지고있는이 문제를 고칠 것이라고 확신하지 못한다. – ItsASecret
나는이 사이트를 얻지 못한다. 나는 파일을 추가 할 때 아무 것도하지 않는다. (나는 올바른 사이트를 시도했고 도메인에서 대시를 잊었다 고 가정한다.) –