这是一个共同的 xmlrpc 问题。我有一串来自 .wav 文件的数据。我读入了文件,file_get_contents()
然后我必须将该信息提交给 xmlrpc 服务器(我没有创建)。它采用 base64 格式的 .wav 音频数据。我试过使用base64_encode()
,但这也返回“字符串”类型。我想也许This php guide onxmlrpc_set_type
会有所帮助,但这会返回一个对象,其中包含一个包含base64编码字符串的数组。
有没有办法将我正在使用的字符串设置为 base64 类型?
这就是我到目前为止所拥有的,这会产生错误:
$data = base64_encode(file_get_contents('myfile.wav', NULL, NULL, 44));
$request = xmlrpc_encode_request('service',array('AudioData'=>$data));
我也试过这个:
$data = file_get_contents('myfile.wav', NULL, NULL, 44);
$request = xmlrpc_encode_request('service',array('AudioData'=>xmlrpc_set_type($data, 'base64')));
这是我得到的回应:
["faultCode"]=> int(0) ["faultString"]=> string(155) "request contains string value where base64 expected
编辑:
我知道 base64 不是一种类型。显然,我使用的服务器除了一串 base64 编码的数据,所以我的问题是如何使它工作。