我想做与FSharp.Data文档中所示非常相似的事情:
我正在请求的URL(TFS)需要客户端验证。有没有办法通过传播我的Windows凭据来提供这个验证?我注意到JsonProvider
有一些其他的编译时参数,但似乎没有支持这个参数。
我想做与FSharp.Data文档中所示非常相似的事情:
我正在请求的URL(TFS)需要客户端验证。有没有办法通过传播我的Windows凭据来提供这个验证?我注意到JsonProvider
有一些其他的编译时参数,但似乎没有支持这个参数。
作为JsonProvider
的类型参数,您不必提供实时URL;您还可以提供一个反映您期望看到的结构的示例文件的文件名。有了这个功能,您可以执行以下步骤:
首先,登录服务并保存反映您要使用的API的JSON文件。
接下来,执行以下操作:
type TfsData = JsonProvider<"/path/to/sample/file.json">
let url = "https://example.com/login/etc"
// Use standard .Net API to log in with your Windows credentials
// Save the results in a variable `jsonResults`
let parsedResults = TfsData.Parse(jsonResults)
printfn "%A" parsedResults.Foo // At this point, Intellisense should work
当然,这些都是非常通用的内容,因为我不知道您登录服务所需执行的确切步骤;假定您已经知道如何执行该操作。关键是自己检索JSON,然后使用提供的类型的.Parse()
方法对其进行解析。
.Load(someUrl)
,而是自己下载 XML/HTML/JSON 数据,然后使用.Parse(someDownloadedData)
。 - rmunn