【问题标题】:Current date / time to RFC 2822 date function with vb / classic asp当前日期/时间到 RFC 2822 日期函数与 vb/经典 asp
【发布时间】:2012-06-15 21:26:50
【问题描述】:

我正在尝试编写一个脚本来将数据推送到亚马逊 s3 存储桶,我需要生成我认为是 RFC 2822 日期以发送到标头请求中。

日期看起来像这样“2012 年 6 月 12 日星期二 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
%>

有什么想法吗?

【问题讨论】:

    标签: rest asp-classic amazon-s3 rfc2822


    【解决方案1】:

    最简单的方法是让 JScript 提供帮助:

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

    现在您可以通过以下方式获取所需时间的字符串格式:

    Dim sTimeStamp: sTimeStamp = JSNow().toString()
    

    【讨论】:

      猜你喜欢
      • 2012-01-28
      • 2010-10-27
      • 2011-03-28
      • 2012-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-28
      • 1970-01-01
      相关资源
      最近更新 更多