簡體   English   中英

如何在HTTP標頭值中放置回車符

[英]How to place carriage Return in HTTP Header value

我有一個HTTP Web請求,看起來類似於以下內容:

    Dim myrequest As HttpWebRequest = HttpWebRequest.Create("myURL")
    myrequest.Proxy = Nothing
    myrequest.UserAgent = "AGENT"
    myrequest.Method = "POST"
    myrequest.ContentLength = 0

    myrequest.Headers.Add("KEY1", value)
    myrequest.Headers.Add("KEY2", value)


    Dim myresponse As HttpWebResponse = myrequest.GetResponse
    Dim mystream As System.IO.Stream = (myresponse.GetResponseStream)

    Dim streamreader As New System.IO.StreamReader(mystream)
    return streamreader.ReadToEnd

問題是我無法發送以下任何值以在標題值中放置換行符。 到目前為止,我已經嘗試過:

vbNewLine

vbCrLf

VBCR

vbLF

這些會產生一個錯誤,提示“指定的值包含無效的CRLF字符”,我也嘗試過

\\ n

\\ r \\ n

它只是將字符串文字添加到我的值中,並且不包含回車符。 在服務器端,我想獲取此標頭中包含的值並將其放在MySQL的列中。

Http標頭不得包含新行,因為這被定義為標頭分隔符。

請參閱https://tools.ietf.org/html/rfc7230#section-3 ,尤其是https://tools.ietf.org/html/rfc7230#section-3.2.6

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM