我正在开发C#应用程序以与Magento进行通信。当我尝试登录以获取会话ID来执行操作时。我在下面使用C#代码。
我的登录代码
using (MagentoService mservice = new MagentoService())
{
loginResponse = mservice.login("admin", "admin123");
}
它总是抛出这个错误
System.ServiceModel.FaultException: 'SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://admin.mywebsite.com/index.php/api/v2_soap/index/?wsdl=1' : Premature end of data in tag html line 7
因为我的API请求每次都会被重定向到网站的主页。
请点击此链接获取此错误的详细信息:Cannot login Magento service using C# [Magento 1.9.3.3] Error: Premature end of data in tag html line 7)
有没有办法阻止我的API请求被重定向?还可以在不干扰Magento设置的情况下从客户端进行操作吗?
答案 0 :(得分:0)
我要求服务器所有者禁用API请求端点URL(https://admin.mywebsite.com/index.php/api/v2_soap/index/
)的重定向,一切正常
答案 1 :(得分:0)
在Magento服务器端,这是我必须在Apache vhost配置中设置的内容:
RewriteCond %{HTTP_HOST} ^admin\.magento\.biz$ [NC]
RewriteCond %{REQUEST_URI} /api/
RewriteRule ^ https://magento.biz%{REQUEST_URI} [L,R]
这似乎是一个已知的Magento错误,其中有两个相互冲突的参数: