【问题标题】:XMLHttpRequest How to know what setRequestHeader to send?XMLHttpRequest 如何知道要发送什么 setRequestHeader?
【发布时间】:2015-01-09 20:57:33
【问题描述】:

我刚开始在 VBA 中使用 MSXML2.XMLHTTP 对象,我正在尝试与我们的内容服务器交互(创建、移动、复制、删除文件)。

我在互联网上找到了一些随机的工作代码,但我仍然不完全理解发生了什么。

Set req As New MSXML2.XMLHTTP

req.Open "MKCOL", "https://company/dav/nodes/" & URIsource & "/" & Encoded_FolderName, False
req.SetRequestHeader "Content-Type", "text/xml"
req.Send 

URIsource 是来自服务器的 objID(即:12345678)

Encoded_Foldername 是传递给这个名为 URLEncode 的函数的文件夹名称 here

来自 OpenText website 我觉得我应该说:

req.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"

但它不适用于我的代码。我必须使用前一个。

我还有一个复制文件的功能,它使用:

 req.setRequestHeader "Destination", strDestURL

我应该如何知道使用什么 Requestheader?是否有用于发布、放置、获取等的列表?我知道“Content-Type”是用来确保服务器理解请求的,但就是这样。

谢谢

【问题讨论】:

  • 来自 Wiki:内容类型:text/html; charset=utf-8 是 Response 字段, Content-Type: application/x-www-form-urlencoded 是 Request 字段,两个都发正常吗?以一种格式提问并以另一种格式接收答案?
  • 是的,请求和响应是不同的消息,可以有不同的Content-Types。该值应该是一个media type,它描述了当前消息中包含任何内容时的正文内容。对于 XHR,正文内容是 .Send 的可选参数。您提到的两种格式是提交<form method="post"> 的典型格式——请求发送表单的值,响应发送回更新的标记。
  • 我只是觉得这很复杂..我在互联网上看到了很多示例,但我无法修改它们以与我们的服务器一起使用。有些做 objHTTP.open "POST", ServerURL, false 然后 ObjHTTP.send postdata ...有些似乎只直接打开文件并做一个空的 .send

标签: javascript vba xmlhttprequest


【解决方案1】:

请求标头包含有关发送者、请求正文和所需响应的信息。

http://help.dottoro.com/ljhcrlbv.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-03
    • 2021-12-14
    • 2018-07-02
    • 1970-01-01
    • 2015-09-19
    相关资源
    最近更新 更多