首页> 疑难解答

无法使用PHP更新CouchDB文档(put request),继续响应“Forbidden”:“Invalid Data”

withpy 2021-06-17

简介我正在尝试使用PHP更新CouchDB文档,但在发送PUT请求时,我总是得到{“error”:“forbidden”,“reason”:“Invalid data”}。 GET请求工作正常。我用过“Baachi / CouchDB”......

我正在尝试使用PHP更新CouchDB文档,但在发送PUT请求时,我总是得到{“error”:“forbidden”,“reason”:“Invalid data”}。 GET请求工作正常。

我使用过来自https://github.com/Baachi/CouchDB的“Baachi / CouchDB”,并在这里跟随指南https://cwiki.apache.org/confluence/display/COUCHDB/PHP

GET请求工作查找,我能够检索文档,但在发送PUT请求时,我得到以下响应:{“error”:“forbidden”,“reason”:“无效数据”}

$client = new \GuzzleHttp\Client(['base_uri' => 'http://user:pass@somehost:5984', 'http_errors' => false]);
$connection = new \CouchDB\Connection($client);
$database = $connection->xyzu;
$doc = [
'_id'    => 'appointment_2_e7611236-eccd-4f5b-abc3-8396db285014',
'_rev'   => '1-a8b63e52533f665d7bdc57aea2eadd35',
'status' => 'Scheduled'
];

$database->update('appointment_2_e7611236-eccd-4f5b-abc3-8396db285014', 
$doc);

第二次尝试:

$doc = [
    '_id'    => 'appointment_2_e7611236-eccd-4f5b-abc3-8396db285014',
    '_rev'   => '1-a8b63e52533f665d7bdc57aea2eadd35',
    'status' => 'Scheduled'
];
$request = $couch->send('PUT', '/' . $message[dbName] . '/' .$message[patient], json_encode($doc));

我期待文档更新,我试图删除_rev只是为了确保我做的一切正确,我得到了Document Conflict,所以这是正确的。但是当包含_rev时我得到“禁止”:“无效数据”

我应该得到“{”ok“:true,”id“:”123“,”rev“:”2039697587“}”

0
投票

我选择了PHP-on-Couch,它运行得很好。

上一篇:Keras:为什么我的val_acc在Epoch 42/50突然下降?

下一篇:Auth 0配置受众

相关文章

  • 如何编写从SAS到python的if语句

    我是SAS用户,他尝试将SAS代码转换为python版本。我已经创建了如下的SAS代码,并且有一些问题要应用于python语言。假设我有数据表,其中包含字段...

  • SaaS和微服务的数据库模式

    我正处于构建SaaS解决方案的最初阶段。要求是:所有客户必须使用相同版本的应用程序。必须隔离来自不同客户的数据。所以,我认为......

  • 给定网络是否具有独特的最小切割?

    设G =(V,E)是一个网络,其中s和t是源和接收器。设f为G中的最大流量。找到一个算法,确定G中是否存在唯一的最小切割。我已设法...

  • 将.bat文件转换为打开并将putty会话加载到Python中

    我有一个.bat文件,它接受一些参数并使用python连接到putty。以下是供参考的代码。 pushd c:start / min Putty.exe -load SessionName -l UserName -pw我正在调用的密码...

  • Phpmyadmin没有创建新列

    我试图在我的phpmyadmin中为数据库表创建一个新列但是我继续在下面得到这个。另外我注意到我无法更改下拉列表中的移动列字段全部灰色...

  • 使用Codeigniter 3.1.10将数组和JSON插入PostgreSQL时出错

    我正在开发一个使用Codeigniter 3.1.10框架和PostgreSQL作为数据库的项目。我将一个表单值从控制器传递给模型,如下所示:$ data = array('field1'=&...