Dev*_*r11 3 f# http-get request-headers http-headers
尝试为 http 调用设置标头但遇到问题。需要指导Authorization和自定义标题x-api-key。
let url = "http://example.com"
let token = requestToken()
let request = WebRequest.Create(url) :?> HttpWebRequest
request.Method <- "GET"
request.Accept <- "application/json;charset=UTF-8"
request.Headers.Authorization <- sprintf "%s %s" token.token_type token.access_token
request.Headers["x-api-key"] <- "api-key" // custom headers
// or this
request.Headers["Authorization"] <- sprintf "%s %s" token.token_type token.access_token
Run Code Online (Sandbox Code Playgroud)
我得到的错误是
错误 FS3217:此表达式不是函数,无法应用。您是否打算改为访问 indexervia expr.[index] ?
您收到的错误消息实际上会告诉您问题是什么。在 F# 中,使用索引器的语法是obj.[idx]-.在对象和方括号之间需要有一个。在您的特定情况下正确的语法是:
request.Headers.["x-api-key"] <- "api-key"
request.Headers.["Authorization"] <- sprintf "%s %s" token.token_type token.access_token
Run Code Online (Sandbox Code Playgroud)