我的服务中有以下代码:
// add Txt record to DNSimple with verification text
await CreateDomainRecordAsync(domain, new DomainRecordDto
{
//....
});
// verify domain on Office365
await _office365domainService.VerifyDomainAsync(domain);
其中第一个操作是调用端点1(域注册器)并向域中添加TXT记录。第二个操作是调用端点2(office365),它验证域注册器中是否存在txt记录。
此代码不起作用,我在第二个操作中得到一个异常,该TXT记录不存在。
我创建了测试代码:
public IActionResult LongOperation()
{
Thread.Sleep(10 * 1000);
return Ok();
}
public IActionResult Test()
{
return Ok();
}
并称之为:
using (HttpClient httpClient = new HttpClient())
{
httpClient.BaseAddress = new Uri("http://test***.azurewebsites.net/home/");
await httpClient.GetAsync("LongOperation");
}
using (HttpClient httpClientLocal = new HttpClient())
{
httpClientLocal.BaseAddress = new Uri("https://localhost:44366/Home");
await httpClientLocal.GetAsync("Test");
}
它按我的预期工作,调用第一个方法,在执行“longoperation”时等待10秒,然后调用“test”方法。
为什么我真正的域代码不等待,以及如何正确执行?