如何在JsonProvider中对请求使用HTTP基本身份验证,并在没有示例文件的情况下推断类型?

时间:2014-02-14 22:14:16

标签: authentication f# type-providers f#-data

这感觉是一个n00b问题,但我想在我拥有的项目上尝试新的FSharp.Data 2.0.0-alpha6库。特别是我试图从受HTTP基本身份验证(用户名和密码)保护的Web服务中读取JSON消息。

如何与JsonProvider(或任何其他提供商)一起阅读授权所采用的URL中的文档,在这种特殊情况下,通过HTTP基本身份验证?

通过判断以下SO问题,我看起来应该单独下载一个示例文件:

然后在F# News: Downloading stock prices阅读 Gustavo 评论让人有一种希望是可能的。

即使我必须单独下载示例文件,如何使用JsonProvider从需要HTTP基本身份验证的资源中解析文档?

我的最小工作样本是

open System
open FSharp.Data
open FSharp.Data.JsonExtensions

//The URLs are something like the following.
//https://xyz.com/rest/v1/datanodes?limit=20&expand=name,processData.v,processData.ts$format=json

//This one tells in a tooltip it cannot read sample from the address
//as server respons with an error 401 Unauthorized.
type x1 = JsonProvider<"https://xyz.com/rest/v1/datanodes?&format=json">

[<EntryPoint>]
let main argv = 

    //This is just of type object, probably because connection can't be made?
    let x2 = new JsonProvider<"https://xyz.com/rest/v1/datanodes?&format=json">

    0

1 个答案:

答案 0 :(得分:4)

目前尚不支持,但实施起来不应太难,我们接受拉取请求。见https://github.com/fsharp/FSharp.Data/issues/158