0

Amazon s3 バケットにデータをプッシュするスクリプトを作成しようとしていますが、ヘッダー リクエストで送信する RFC 2822 日付と思われるものを生成する必要があります。

日付は「Tue, 12 June 2012 23:41:58 +0000」のようになります

次のエラーが発生しているため、正しい時間形式を生成する関数が必要です。

RequestTimeTooSkewed The difference between the request time and the current time is too large.

これは私がこれまでに持っているものです...

<%
sTimeStamp = "Tue, 12 June 2012 23:41:58 +00002012-06-12T22:45:47Z"
sAWSAccessKeyId = "AESDQWDQWD"
sSignature=Encrypt("SecretQWEQWEQWEQWEYAYAY")

AWSServiceUrl = "https://s3.amazonaws.com/"
Set oXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
oXMLHTTP.open "GET", AWSServiceUrl, False
oXMLHTTP.setRequestHeader "Authorization", "AWS " & sAWSAccessKeyId & ":" & sSignature
oXMLHTTP.setRequestHeader "x-amz-date", sTimeStamp
on error resume next
oXMLHTTP.send sRequest
Response.Write oXMLHTTP.responseText
%>

何か案は?

4

1 に答える 1

0

これを行う最も簡単な方法は、JScript を利用することです。

<script runat="server" language="javascript">
    function JSNow() { return new Date(); }
</script>

これで、必要な時間の文字列形式を次のように取得できます。

Dim sTimeStamp: sTimeStamp = JSNow().toString()
于 2012-06-13T16:33:10.600 に答える