Php 通过vtiger 5.4 webservice添加/上载文件
我正试图通过vtiger 5.4 Web服务创建一个带有附加文件的文档 创建文档非常简单,但我不清楚添加文件的过程。 这似乎是一个分为两步的过程:Php 通过vtiger 5.4 webservice添加/上载文件,php,vtiger,Php,Vtiger,我正试图通过vtiger 5.4 Web服务创建一个带有附加文件的文档 创建文档非常简单,但我不清楚添加文件的过程。 这似乎是一个分为两步的过程: 上传文件 将文件引用到文档 除非有一种直接的方法将文件与document对象一起上传,否则我找不到任何关于这个主题的文档(除了基本的、基本的webservices文档) 希望有什么指点。 谢谢 您没有指定使用哪种语言,因此我将在这里粘贴一个简单的curl请求,您可以自己尝试,并找出如何用您选择的语言复制它 基本上,您需要做的是将文件作为“multip
谢谢 您没有指定使用哪种语言,因此我将在这里粘贴一个简单的curl请求,您可以自己尝试,并找出如何用您选择的语言复制它 基本上,您需要做的是将文件作为
“multipart/form data”
附加到为创建新文件而发送的POST请求中
curl -i \
-b vtcookies \
-H "Accept: application/json; charset=UTF-8" \
-X POST \
-F '_operation=saveRecord' \
-F 'module=Documents' \
-F 'session=20a5XXXXXXX9a1ba95c19a' \
-F 'values={"notes_title" : "Example title", "assigned_user_id" : "19x1", "notecontent" : "<p>Some content</p>", "filelocationtype" : "I", "filestatus" : 1, "filename" : "set-your-file-name.png"}' \
-F "file=@\"path-to-filename.png\";filename=\"filename.png\"" \
http://localhost:8888/vtigercrm540/modules/Mobile/api.php
在明确提出与PHP有关的问题后,添加了以下内容
根据请求的PHP语言,这里有更多信息。
我使用了,我可以给出更多提示(该项目是针对Webservices的,而不是针对mobileapi的,但提供了一个PHP客户机来使用,其基本概念非常相似)
Vtiger\u HTTP\u客户端
是Curl\u HTTP\u客户端
的一个子类。与其使用send\u post\u data
方法,不如查看send\u multipart\u post\u data
。在HTTP\u Client.php
文件中有一个名为doPost
的方法。我制作了一个名为doPostFile
的版本,如下所示:
function doPostFile($postdata=false, $file, $decodeResponseJSON=false, $timeout=20) {
if($postdata === false) $postdata = Array();
$this->debug = TRUE;
$resdata = $this->send_multipart_post_data($this->_serviceurl, $postdata, $file, null, $timeout);
if($resdata && $decodeResponseJSON) $resdata = $this->__jsondecode($resdata);
return $resdata;
}
在此代码中,$file
变量包含$\u文件[“file”]
,其变量转储类似于:
array(6) { ["name"]=> string(28) "@8590567929_72c0ded112_o.jpg"
["type"]=> string(11) "@image/jpeg"
["tmp_name"]=> string(36) "/Applications/MAMP/tmp/php/phpZWMXz5"
["error"]=> int(0) ["size"]=> int(1255732) }
谢谢我试试看。我使用的是php,但是你的例子还是有帮助的。嗨,我编辑了我的答案,希望能更有用。如果你认为这是一个可以接受的答案,请告诉我。谢谢
array(6) { ["name"]=> string(28) "@8590567929_72c0ded112_o.jpg"
["type"]=> string(11) "@image/jpeg"
["tmp_name"]=> string(36) "/Applications/MAMP/tmp/php/phpZWMXz5"
["error"]=> int(0) ["size"]=> int(1255732) }