StackOverflow的预参考文章:
你好 我正在寻找一种在Google云端硬盘上执行原子操作的方法。例如,如果名称不存在,则创建一个文件夹。到目前为止,我已经发现并阅读了之前的StackOver提交内容,但还没有找到一种原子方法。
查找文件夹是否存在:
curl "https://www.googleapis.com/drive/v3/files" \
--request GET \
--verbose -G \
--data-urlencode "'[** PARENT ID **]' in parents and name = '[** FOLDER_NAME **]' and mimeType = 'application/vnd.google-apps.folder' and trashed=false" \
--header "authorization: Bearer [** ACCESS TOKEN **]" \
--header "cache-control: no-cache"
如果上述方法返回的结果为空,则创建一个具有所请求名称的文件夹,该文件夹基本上与POST而不是GET相同:
curl "https://www.googleapis.com/drive/v3/files" \
--request POST \
--verbose -G \
--data-urlencode "name = ''[** PARENT ID **]' in parents and [** FOLDER_NAME **]' and mimeType = 'application/vnd.google-apps.folder'" \
--header "authorization: Bearer [** ACCESS TOKEN **]" \
--header "cache-control: no-cache"
但是,如果同时发生多个创建文件夹请求,为避免出现竞争状况。
建议? 谢谢您的协助