SOAP를 사용하여 Taleo (Talent Management) 데이터베이스에 정보를 업로드 할 Drupal/PHP 모듈을 만들고 있습니다. 이것은 텍스트와 날짜 같은 일반 데이터에서는 잘 작동하지만 파일에서는 정상적으로 작동하지 않습니다. 내가이 얻을 "에코 $ B64File"할 때비누 : 이진 데이터 업로드
// Send attachment
$fileName = drupal_get_path('module', 'taleo') . '/test.txt';
$rawFile = fread(fopen($fileName, "r"), filesize($fileName));
$B64File = base64_encode($rawFile);
$params = array(
'in0' => $session,
'in1' => $candidate_id,
'in2' => 'test.txt',
'in3' => 'test.txt',
'in4' => 'text/plain',
'in5' => $B64File
);
$client_taleo->__call('createAttachment', $params);
:
createAttachment Test Case:
<soapenv:Header/>
<soapenv:Body>
<urn:createAttachment>
<in0>webapi-5616904436472928038</in0>
<in1>15</in1>
<in2>test1.docx</in2>
<in3>test1.docx</in3>
<in4>application/vnd.openxmlformatsofficedocument.
wordprocessingml.document</in4>
<in5>
<!--type: base64Binary-->
<array>JVBERi0xLjQNJeLjz9MNCjYgMCBvYmogPDwvTGluZWFyaX==</array>
</in5>
</urn:createAttachment>
</soapenv:Body>
</soapenv:Envelope>
그래서 나는이 같은 PHP 파일을 만든 :
매뉴얼은 첨부 파일의 예를 보여줍니다 RmlsZSB1cGxvYWQgd2l0aCBEcnVwYWwgIQ을 ==, 그래서 파일이 올바른 읽히고있다.
그러나 나는 항상이 오류가 발생합니다 :
ERROR : soapenv : Server.generalException-attBinDataArr가 null입니다.
아이디어가 있으십니까?
실제로 어떻게 PHP 코드가 어떻게 생겼는지 알 수 있습니까? .? 나는 –
편집에 추가 'IN5':(모든 것을 시도 흠, 이미 시도 :(그 – Jaif
=이> $ B64File는, 배열 태그를 캡슐화하는 방법에 더 많은 코드와 –