2012-11-20 3 views
0

파일을 Flatiron에서 업로드하려고합니다.파일을 사용하여 파일을 업로드

form = formidable.IncomingForm() 
form.parse request, (error, fields, files) -> 
    # upload done 

을 동일한 코드가 아이언에서 작동하지 않습니다하지만 - 아이언 (전용 노드)를 사용하지 않고, 그래서 같은 가공 할 사용하여 파일 업로드를 할 수 있었다. 첫 번째 줄 뒤에 거기에 달려 있습니다 -

form = formidable.IncomingForm() 
app.log.info 'Form object made' # This is getting printed 
form.parse @.req, (error, fields, files) -> 
    app.log.info 'Upload done' # This is not getting printed 

무엇이 여기에 있습니까? 오류도 없습니다.

주 - 코드 샘플은 CoffeeScript에 있습니다.

+0

오타 .req''@ 아니면 그것이 당신의 문제의 원인이 될 수 있습니다 : 여기

app.router.post('/form', { stream: true }, function(){}); 

작동 코드 요지이다? –

+0

'@ .req'는'this.req'이며, flatiron의 요청 객체입니다. 나는 이것이 문제라고 생각하지 않지만 확실하지 않습니다. – Siddharth

+0

Flatiron에서 파일을 업로드 할 수있는 다른 방법이 있다면 그 파일도 알고 싶습니다. – Siddharth

답변

0

파일 업로드는 미묘한 것 같습니다. 나는 많은 정보도 찾지 못했다. 그래서 여기에 내 해결책이있다.

union/flatiron.plugins.http의 버퍼를 켜야합니다.

app.use(flatiron.plugins.http, {buffer: false}); 

그리고 게시물 경로에서 스트림을 켜야합니다. https://gist.github.com/ichbinadrian/4971260