RESTful API请求在Python和浏览器中工作,但在VB.Net中不工作

RESTful API请求在Python和浏览器中工作,但在VB.Net中不工作,python,vb.net,rest,Python,Vb.net,Rest,我想通过以下调用调用RESTful API https://sdw-wsrest.ecb.europa.eu/service/data/EXR/D..EUR.SP00.A?updatedAfter=2018-08-01T07%3A05%3A02%2B07%3A05&startPeriod=2018-08-01&detail=dataonly&dimensionAtObservation=TIME_PERIOD 结果应该是一个包含货币汇率的XML 我需要让它在vb.net

我想通过以下调用调用RESTful API

https://sdw-wsrest.ecb.europa.eu/service/data/EXR/D..EUR.SP00.A?updatedAfter=2018-08-01T07%3A05%3A02%2B07%3A05&startPeriod=2018-08-01&detail=dataonly&dimensionAtObservation=TIME_PERIOD
结果应该是一个包含货币汇率的XML

我需要让它在vb.net中工作,但它不再工作了。几天前它仍然有效。我使用以下代码:

试试看
'定义网络客户端设置
Dim_webClient As System.Net.webClient=新System.Net.webClient
“我试过了,有没有下一行
“_webClient.Headers(HttpRequestHeader.UserAgent)=”Mozilla/5.0(X11;Linux x86_64)AppleWebKit/537.36(KHTML,类似Gecko)Chrome/54.0.2840.90 Safari/537.36”
Dim链接作为字符串=”https://sdw-wsrest.ecb.europa.eu/service/data/EXR/D..EUR.SP00.A?updatedAfter=2018-08-01T07%3A05%3A02%2B07%3A05&开始时间=2018-08-01&细节=仅数据和尺寸观察=时间段”
Dim sourceString As String=\u webClient.DownloadString(链接)
特例
'请求url中或服务器端出现错误
Console.WriteLine(DateTime.Now.ToString(“MMM dd hh:mm:ss”)和“Error:”&ex.Message)
ex.message
则包含以下信息:

远程服务器返回错误:(500)内部服务器错误

但是,在我的浏览器中,当复制并粘贴到地址栏和Python时,同样的请求也会起作用。我使用以下Python代码:

import requests

url = 'https://sdw-wsrest.ecb.europa.eu/service/data/EXR/D..EUR.SP00.A?updatedAfter=2018-08-01T07%3A05%3A02%2B07%3A05&startPeriod=2018-08-01&detail=dataonly&dimensionAtObservation=TIME_PERIOD'

response = requests.get(url)
print(response.status_code) #returns 200

VB.Net代码中的错误是什么?有什么区别吗?

我知道错误是什么。我必须按如下方式设置
Accept
标题:

_webClient.Headers(HttpRequestHeader.Accept) = "*/*"

然后它就工作了。

您想要vba还是vb.Net?上面是.Net吗?我已经给出了VBA的答案。如果只有.Net,我将删除,请告知。请参阅以下.Net