私の考えは、LOCK
のApache/WebDAVサーバー上のファイルで、PUT
はサーバー上の更新バージョン、それ以降はUNLOCK
です。cURL/WebDAVを使用してロックを解除する
私は死体で次のことを試してみました:
- は
updated file
なると(死体で)それを保存するためにa file
- 編集
A.txt
を生成するコンテンツa file
GET
ファイルA.txt
でファイルA.txt
を作成GET
ファイルA.txt
まだ収率が得られる
を得死体で
GET
ファイルA.txt
私はGET
はそれをSとそれをローカルに変更し、内部で死体LOCK
のファイルを推測します。それからそれはPUT
とそれはUNLOCK
です。 質問:どうすればこのようにカールできますか?
問題:接続が遅く、ファイルがPUT
の場合、それはまだ完全にはアップロードされていませんが、まだアップロードされている部分のみを取得します。新しいものが完成していない限り古いものを手に入れたいです。
はを試してみました:私は手動でファイルをロックするには、次の(すなわちcURLを持つ)を試してみました:
curl -v -X LOCK --user "user:password" http://myServer/newFile
私は何を得ることである:
ApacheのログファイルIを見て* About to connect() to myServer port 80 (#0)
* Trying xx.xx.xxx.xxx... connected
* Connected to myServer (xx.xx.xxx.xxx) port 80 (#0)
* Server auth using Basic with user 'user'
> LOCK /newFile HTTP/1.1
> Authorization: Basic xxxxxxxxxxxxxxxxx
> User-Agent: curl/7.21.6 (x86_64-pc-linux-gnu) libcurl/7.21.6 OpenSSL/1.0.0e zlib/1.2.3.4 libidn/1.22 librtmp/2.3
> Host: myServer
> Accept: */*
>
< HTTP/1.1 400 Bad Request
< Date: Wed, 02 May 2012 15:20:55 GMT
< Server: Apache/2.2.3 (CentOS)
< Content-Length: 226
< Connection: close
< Content-Type: text/html; charset=iso-8859-1
<
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
</p>
</body></html>
* Closing connection #0
見つける:
[Wed May 02 15:20:55 2012] [error] [client xx.xx.xxx.xxx] The lock refresh for /newFile failed because no lock tokens were specified in an "If:" header. [400, #0]
[Wed May 02 15:20:55 2012] [error] [client xx.xx.xxx.xxx] (20)Not a directory: No locktokens were specified in the "If:" header, so the refresh could not be performed. [400, #103]
ありがとうございました!!
更新日:問題の説明を追加しました。乾杯!
私はPUTの低速接続をシミュレートするためにmyServerを絞りました。あなたのポイント3.今度は、完全には送信されませんでしたが、この新しいファイルを取得しようとすることができます。それが、LOCKや何かを置いてみたいという要点です。私が言及したように、死体を使用するとき、それはファイルを見て、それをダウンロードし、変更し、アップロードし、次にそれをアンロックすることがわかります。乾杯! – ezdazuzena
更新:私はcadaverを使って同じ問題を抱えているのを見ました:(cadaverで編集したファイルを保存するとアップロードされて同じ問題が発生する – ezdazuzena