我有一个简单的项目,使用checkVatService.wsdl
来检查欧洲增值税号的数量。
在MACOS上运行项目时,出现以下错误:“ error : HTTP/1.1 401 Unauthorized
”。
在Win32上运行时,项目返回“有效”
procedure TForm1.ControleVat;
var
cv : checkVatApprox;
cvs : checkVatApproxResponse;
HTTPRIO1: THTTPRIO;
begin
HTTPRIO1 := THTTPRIO.Create(nil);
HTTPRIO1.WSDLLocation := 'checkVatservice.WSDL';
HTTPRIO1.Service := 'checkVatService';
HTTPRIO1.Port := 'checkVatPort';
cvs:=nil;
cv:=checkVatApprox.Create;
try
cv.countryCode := 'BE';
cv.vatNumber := '0000000097';
try
cvs:= ( HTTPRIO1 as checkVatPortType ).checkVatApprox(cv);
if cvs.valid then begin
showmessage('valid');
end else begin
showmessage('invalid');
end;
except
on e:exception do begin
showmessage('error : ' + e.Message);
end;
end;
finally
cv.Free;
freeandnil(cvs);
end;
end;
该服务不需要自动设置,在Win32和OS中,用户名/密码均为空白。
是什么导致此错误?连接有什么区别?
最佳答案
我在android中有同样的问题。在Windows中一切正常;
如果客户端检索ipv6而不是ipv4,这似乎与某些奇怪的服务器问题有关。
我建议您使用:https://www.isvat.eu/
关于macos - 在Win32中工作时,在OS上连接到Web服务的HTTPRIO“错误:HTTP/1.1 401未经授权”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48749366/