2009-07-15 6 views
0

Zend_Service_Nirvanix를 사용하여 이미지를 업로드 할 수 없습니다. 심지어 가능할까요? Transfer Service에서 UploadHost를 설정하는 방법을 파악할 수 없다는 것과 내 문제가 관련이 있다고 생각합니다.Image Upload with Zend_Service_Nirvanix

도움을 주시면 대단히 감사하겠습니다. 마감일은 7 월 16 일입니다!

Zend_Service_Nirvanix_Exception : XML 응답에서 구문 분석 할 수 없습니다 서버 오류에 '

다음
$nirvanix = new Zend_Service_Nirvanix(array('appKey' => $key, 
              'username' => $user, 
              'password' => pass)); 

$NSImfs = $nirvanix->getService('IMFS'); 
$options = array('sizeBytes' => filesize($source)); 
$storageNode = $NSImfs->getStorageNode($options); 

$NSTransfer = $nirvanix->getService('Transfer'); 
$options = array('uploadToken' => $storageNode->getStorageNode->UploadToken, 
       'path' => $original, 
       'fileData' => file_get_contents($source)); 
$result = $NSTransfer->uploadFile($options); 

내가 점점 계속 오류입니다 : 여기

내 코드입니다 /' 신청. 리소스를 찾을 수 없습니다. 설명 : HTTP 404입니다. (또는 해당 종속성 중 하나)이 일 수 있고, 이름이 이거나, 임시로 을 사용할 수 없게 될 수 있습니다. URL에있는 을 검토하고 철자가 올바른지 확인하십시오.

요청 된 URL : 라인 /Applications/MAMP/bin/php5/lib/php/Zend/Service/Nirvanix/Response.php 에서 /ws/Transfer/UploadFile.ashx

119

답변

0

브라우저를 통한 웹 업로드가 아닌 로컬 업로드를 수행하려면 파일 데이터를 전달하는 putContents 메소드를 호출하기 만하면됩니다.

예 :

$nirvanix = new Zend_Service_Nirvanix(array('appKey' => $key, 
              'username' => $user, 
              'password' => pass)); 

$NSImfs = $nirvanix->getService('IMFS'); 

$response = $NSImfs->putContents($destination_file_and_path, 
           file_get_contents($source_file)); 

if($response->ResponseCode != 0) 
{ 
    echo 'Fail!'; 
} 

당신은 브라우저를 업로드 토큰을 전달하는 토큰을 생성 할 경우에만 GetStorageNode을 부를 것이다.

0

404가 표시됩니까?

  • 해당 라이브러리의 업데이트 된 버전을 확인 했습니까?
  • 라이브러리에 들어가서 UploadFile.ashxUploadFile.aspx으로 변경해보세요. 저는 ashx가 표준 확장이 아니라고 생각합니다.

아마도 문제가 해결 될 것입니다.

+0

모든 Nirvanix 서비스는 .ashx 확장자를 사용합니다. Zend Framework 버전 1.7.1을 사용하고 있다고 생각합니다. –

0

Nirvanix에 파일 및 이미지 업로드를 지원하는 Aurigma의 상용 업로드 도구가 있습니다. 확인하려면 도움말 항목에 link (Nirvanix 섹션에 업로드하기 참조) 항목이 있습니다.

+0

고마워요,하지만 고마워요. Aurigma의 도구는 브랜드입니다. 또한 Javascript + Java는 PHP + Flash가 아니고 PHP도 아닙니다. –