我正在连接到REST API,以将多个表放入Power BI文件中。我可以使用主工具栏中的“获取数据>其他>网络”连接到API并检索数据,而不会出现任何问题,然后以以下格式输入网址:
https://api01.naturalhr.net/2.0/timeoff/key/(security key here)/format/xml
数据通常很快返回-大约需要10-20秒。
我的问题是,当我尝试刷新相同的数据时,通常会在5分钟后超时。要刷新,请转到“转换数据(我认为这是较早版本中的“编辑查询”)>选择我感兴趣的查询(在这种情况下为“ timeoff”)>选择主菜单上的“刷新预览”按钮
Power Query编辑器中的公式栏中的源仍然是:
= Xml.Tables(Web.Contents("https://api01.naturalhr.net/2.0/timeoff/key/(security key here)/format/xml"))
因此,我只是尝试刷新检索数据所用的相同URL,而没有任何问题,但是由于某种原因,它最多花费的时间更长,更常见的是完全超时。
请注意,我确实对原始数据进行了一些转换,但是即使删除了所有这些转换,我仍然看到超时。
有人可以解释为什么我可以获取但不能刷新相同的数据吗?非常感谢。
### EDIT: 为了对此提供更多信息,我使用了新的Power BI诊断工具来尝试解决此问题。我注意到,在资源列显示原始URL的同时,数据源查询列将文本'HTTP / 1.1'附加到原始URL。请查看下面的屏幕截图。如果我尝试使用添加的文本建立新连接,则查询超时。谁能告诉我为什么要添加额外的文本,为什么这会阻止返回数据,以及如何解决此问题?谢谢
答案 0 :(得分:0)
在空白查询中尝试这种方式:
let
GetData =
let
source = Web.Contents("https://api01.naturalhr.net/2.0/timeoff/key/(security key here)/format/xml"),
xml = Xml.Document(source)
in
xml
in
GetData
使用@Rick Grimes之类的Fiddler来查看您的请求是否正常发送。