Comments (15)
Add some information to address the above issues
At present, it has been found that all agents using different versions of tengine have encountered a request with a 0kb and status code of 200. However, the old agents using nginx have not found this situation. It is currently suspected that it is a problem with the tengine processing process. The business mode of all agents using nginx and tengine is the same.
from tengine.
Could you provide us with a minimal reproducible example?
For instance, utilize the curl command to replicate the unsuccessful request, along with specific nginx configuration details.
From the tcpdump package log, you can reconstruct the request with curl command. Then use that command to request nginx and try to reproduce
from tengine.
Another potentially valuable suggestion could involve referencing the debug log for nginx/tengine. This would significantly enhance our ability to address the issue effectively. This would greatly speed up the problem addressing process if you could furnish us with the debug log pertaining to the unsuccessful request.
from tengine.
Hello, there are records in the error log: client Backend instance ip closed keepalive connection
Do you have any helpful information.
from tengine.
The return data of the abnormal curl was replicated using curl. Currently, a request with incomplete transmission has been replicated, and the normal return size is around 40164, while this incomplete request is only 28579
root@VTN-ubuntu:~/wangyuhao# curl http://xxx.xxx.54.34:9999/services/userAPI?wsdl
wsdl:types
<xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://service.ra.tca.topca.cn/" xmlns:tns="http://service.ra.tca.topca.cn/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="queryCertResult">
xs:sequence
<xs:element name="totalSize" type="xs:int"/>
<xs:element maxOccurs="unbounded" minOccurs="0" name="certInfos" nillable="true" type="tns:certInfo"/>
<xs:element maxOccurs="unbounded" minOccurs="0" name="userInfos" nillable="true" type="tns:userInfo"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="certInfo">
xs:sequence
<xs:element minOccurs="0" name="certStatus" type="xs:string"/>
<xs:element minOccurs="0" name="certReqDate" type="xs:string"/>
<xs:element minOccurs="0" name="certReqTransid" type="xs:string"/>
<xs:element minOccurs="0" name="certReqNonce" type="xs:string"/>
<xs:element minOccurs="0" name="certReqBufType" type="xs:string"/>
<xs:element minOccurs="0" name="certReqChallenge" type="xs:string"/>
<xs:element minOccurs="0" name="certReqComment" type="xs:string"/>
<xs:element minOccurs="0" name="certApproveDate" type="xs:string"/>
<xs:element minOccurs="0" name="certRejectDate" type="xs:string"/>
<xs:element minOccurs="0" name="certSignDate" type="xs:string"/>
<xs:element minOccurs="0" name="certSerialNumber" type="xs:string"/>
<xs:element minOccurs="0" name="certNotBefore" type="xs:string"/>
<xs:element minOccurs="0" name="certNotAfter" type="xs:string"/>
<xs:element minOccurs="0" name="certIssuerHashMd5" type="xs:string"/>
<xs:element minOccurs="0" name="certIssuerDn" type="xs:string"/>
<xs:element minOccurs="0" name="certSubjectHashMd5" type="xs:string"/>
<xs:element minOccurs="0" name="certSubjectDn" type="xs:string"/>
<xs:element minOccurs="0" name="certSuspendDate" type="xs:string"/>
<xs:element minOccurs="0" name="certRevokeDate" type="xs:string"/>
<xs:element minOccurs="0" name="certRevokeReason" type="xs:string"/>
<xs:element minOccurs="0" name="certRenewalDate" type="xs:string"/>
<xs:element name="certRenewalPrevId" type="xs:int"/>
<xs:element name="certRenewalNextId" type="xs:int"/>
<xs:element name="certReqOverrideValidity" type="xs:int"/>
<xs:element name="id" type="xs:int"/>
<xs:element minOccurs="0" name="certReqBuf" type="xs:string"/>
<xs:element minOccurs="0" name="certSignBuf" type="xs:string"/>
<xs:element minOccurs="0" name="certPin" type="xs:string"/>
<xs:element minOccurs="0" name="certType" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcReq1" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcReq2" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcReq3" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcRep1" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcRep2" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcRep3" type="xs:string"/>
<xs:element minOccurs="0" name="certDeliverMode" type="xs:string"/>
<xs:element minOccurs="0" name="certApproveAdmin1" type="xs:string"/>
<xs:element minOccurs="0" name="certApproveAdmin2" type="xs:string"/>
<xs:element minOccurs="0" name="certRenewemailDeliver" type="xs:string"/>
<xs:element minOccurs="0" name="certReqBufKmc" type="xs:string"/>
<xs:element minOccurs="0" name="certReqBufTypeKmc" type="xs:string"/>
<xs:element minOccurs="0" name="certSignBufKmc" type="xs:string"/>
<xs:element minOccurs="0" name="certSignBufP7Kmc" type="xs:string"/>
<xs:element minOccurs="0" name="certSignBufP7" type="xs:string"/>
<xs:element minOccurs="0" name="certSerialnumberKmc" type="xs:string"/>
<xs:element minOccurs="0" name="certTypeKmc" type="xs:string"/>
<xs:element minOccurs="0" name="certReqPublickey" type="xs:string"/>
<xs:element minOccurs="0" name="certReqPublickeyHashMd5" type="xs:string"/>
<xs:element minOccurs="0" name="certIdRandom" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="userInfo">
xs:sequence
<xs:element name="accountId" type="xs:int"/>
<xs:element minOccurs="0" name="userName" type="xs:string"/>
<xs:element minOccurs="0" name="userSurname" type="xs:string"/>
<xs:element minOccurs="0" name="userSerialnumber" type="xs:string"/>
<xs:element minOccurs="0" name="userEmail" type="xs:string"/>
<xs:element minOccurs="0" name="userOrganization" type="xs:string"/>
<xs:element minOccurs="0" name="userOrgunit" type="xs:string"/>
<xs:element minOccurs="0" name="userCountry" type="xs:string"/>
<xs:element minOccurs="0" name="userState" type="xs:string"/>
<xs:element minOccurs="0" name="userLocality" type="xs:string"/>
<xs:element minOccurs="0" name="userStreet" type="xs:string"/>
<xs:element minOccurs="0" name="userDns" type="xs:string"/>
<xs:element minOccurs="0" name="userIp" type="xs:string"/>
<xs:element minOccurs="0" name="userTitle" type="xs:string"/>
<xs:element minOccurs="0" name="userDescription" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField1" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField2" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField3" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField4" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField5" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField6" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField7" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField8" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField9" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField10" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="accountInfo">
xs:sequence
<xs:element minOccurs="0" name="parentHash" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="accountConfig" type="tns:accountConfigResult"/>
<xs:element minOccurs="0" name="accountOrganization" type="xs:string"/>
<xs:element minOccurs="0" name="accountOrgunit" type="xs:string"/>
<xs:element minOccurs="0" name="accountEmail" type="xs:string"/>
<xs:element minOccurs="0" name="accountStatus" type="xs:string"/>
<xs:element name="accountOrder" type="xs:int"/>
<xs:element name="accountQuantity" type="xs:int"/>
<xs:element minOccurs="0" name="accountServiceEndDate" type="xs:string"/>
<xs:element minOccurs="0" name="accountEnrollDate" type="xs:string"/>
<xs:element minOccurs="0" name="accountApproveDate" type="xs:string"/>
<xs:element minOccurs="0" name="accountRejectDate" type="xs:string"/>
<xs:element minOccurs="0" name="accountSuspendDate" type="xs:string"/>
<xs:element minOccurs="0" name="accountCertDeliver" type="xs:string"/>
<xs:element minOccurs="0" name="accountAutoDeliver" type="xs:string"/>
<xs:element name="accountCertOrder" type="xs:int"/>
<xs:element name="accountCertQuantity" type="xs:int"/>
<xs:element name="accountOcspOrder" type="xs:int"/>
<xs:element name="accountOcspQuantity" type="xs:int"/>
<xs:element name="accountMinAdmin" type="xs:int"/>
<xs:element minOccurs="0" name="accountType" type="xs:string"/>
<xs:element name="accountRenewDay" type="xs:int"/>
<xs:element minOccurs="0" name="accountServiceURL" type="xs:string"/>
<xs:element name="accountChoose" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="accountConfigResult">
xs:sequence
<xs:element minOccurs="0" name="certTemplate" type="xs:string"/>
<xs:element minOccurs="0" name="serviceUrl" type="xs:string"/>
<xs:element minOccurs="0" name="algorithm" type="xs:string"/>
<xs:element minOccurs="0" name="isDoubleCert" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="RaServiceUnavailable" type="tns:RaServiceUnavailable"/>
<xs:complexType name="RaServiceUnavailable">
xs:sequence
<xs:element name="errorCode_" nillable="true" type="xs:int"/>
<xs:element name="message_" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertByCertId" type="tns:queryCertByCertId"/>
<xs:complexType name="queryCertByCertId">
xs:sequence
<xs:element name="certId" type="xs:int"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertByCertIdResponse" type="tns:queryCertByCertIdResponse"/>
<xs:complexType name="queryCertByCertIdResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:queryCertResult"/>
</xs:sequence>
</xs:complexType>
<xs:element name="unsuspendCert" type="tns:unsuspendCert"/>
<xs:complexType name="unsuspendCert">
xs:sequence
<xs:element minOccurs="0" name="serialNumber" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="unsuspendCertResponse" type="tns:unsuspendCertResponse"/>
<xs:complexType name="unsuspendCertResponse">
xs:sequence/
</xs:complexType>
<xs:element name="queryCerts" type="tns:queryCerts"/>
<xs:complexType name="queryCerts">
xs:sequence
<xs:element minOccurs="0" name="userInfo" type="tns:userInfo"/>
<xs:element minOccurs="0" name="certInfo" type="tns:certInfo"/>
<xs:element name="pageIndex" type="xs:int"/>
<xs:element name="pageSize" type="xs:int"/>
<xs:element minOccurs="0" name="sqlTemplateFileName" type="xs:string"/>
<xs:element minOccurs="0" name="nextResultTag" type="xs:string"/>
<xs:element minOccurs="0" name="totalTag" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertsResponse" type="tns:queryCertsResponse"/>
<xs:complexType name="queryCertsResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:queryCertResult"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadDeltaCRL" type="tns:downloadDeltaCRL"/>
<xs:complexType name="downloadDeltaCRL">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadDeltaCRLResponse" type="tns:downloadDeltaCRLResponse"/>
<xs:complexType name="downloadDeltaCRLResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="getCertChainByAccount" type="tns:getCertChainByAccount"/>
<xs:complexType name="getCertChainByAccount">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="getCertChainByAccountResponse" type="tns:getCertChainByAccountResponse"/>
<xs:complexType name="getCertChainByAccountResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadCRL" type="tns:downloadCRL"/>
<xs:complexType name="downloadCRL">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadCRLResponse" type="tns:downloadCRLResponse"/>
<xs:complexType name="downloadCRLResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="enrollCert" type="tns:enrollCert"/>
<xs:complexType name="enrollCert">
xs:sequence
<xs:element minOccurs="0" name="userInfo" type="tns:userInfo"/>
<xs:element minOccurs="0" name="certReqBuf" type="xs:string"/>
<xs:element minOccurs="0" name="certReqChallenge" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="enrollCertResponse" type="tns:enrollCertResponse"/>
<xs:complexType name="enrollCertResponse">
xs:sequence/
</xs:complexType>
<xs:element name="syncAccountInfo" type="tns:syncAccountInfo"/>
<xs:complexType name="syncAccountInfo">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="syncAccountInfoResponse" type="tns:syncAccountInfoResponse"/>
<xs:complexType name="syncAccountInfoResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:accountInfo"/>
</xs:sequence>
</xs:complexType>
<xs:element name="renewCertAA" type="tns:renewCertAA"/>
<xs:complexType name="renewCertAA">
xs:sequence
<xs:element minOccurs="0" name="userInfo" type="tns:userInfo"/>
<xs:element minOccurs="0" name="origin" type="tns:certInfo"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="aaCheckPoint" type="xs:string"/>
<xs:element minOccurs="0" name="passCode" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="renewCertAAResponse" type="tns:renewCertAAResponse"/>
<xs:complexType name="renewCertAAResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:certInfo"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadCA" type="tns:downloadCA"/>
<xs:complexType name="downloadCA">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadCAResponse" type="tns:downloadCAResponse"/>
<xs:complexType name="downloadCAResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="doScript" type="tns:doScript"/>
<xs:complexType name="doScript">
xs:sequence
<xs:element minOccurs="0" name="scriptName" type="xs:string"/>
<xs:element minOccurs="0" name="jsonMap" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="doScriptResponse" type="tns:doScriptResponse"/>
<xs:complexType name="doScriptResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="synchroTemplate" type="tns:synchroTemplate"/>
<xs:complexType name="synchroTemplate">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="synchroTemplateResponse" type="tns:synchroTemplateResponse"/>
<xs:complexType name="synchroTemplateResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:accountConfigResult"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertBySerialNumber" type="tns:queryCertBySerialNumber"/>
<xs:complexType name="queryCertBySerialNumber">
xs:sequence
<xs:element minOccurs="0" name="serialNumber" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertBySerialNumberResponse" type="tns:queryCertBySerialNumberResponse"/>
<xs:complexType name="queryCertBySerialNumberResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:queryCertResult"/>
</xs:sequence>
</xs:complexType>
<xs:element name="pickupCert" type="tns:pickupCert"/>
<xs:complexType name="pickupCert">
xs:sequence
<xs:element minOccurs="0" name="certPin" type="xs:string"/>
<xs:element minOccurs="0" name="certReqChallenge" type="xs:string"/>
<xs:element minOccurs="0" name="certReqBuf" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="pickupCertResponse" type="tns:pickupCertResponse"/>
<xs:complexType name="pickupCertResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:certInfo"/>
</xs:sequence>
</xs:complexType>
<xs:element name="revokeCert" type="tns:revokeCert"/>
<xs:complexType name="revokeCert">
xs:sequence
<xs:element minOccurs="0" name="serialNumber" type="xs:string"/>
<xs:element minOccurs="0" name="certReqChallenge" type="xs:string"/>
<xs:element minOccurs="0" name="certRevokeReason" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="revokeCertResponse" type="tns:revokeCertResponse"/>
<xs:complexType name="revokeCertResponse">
xs:sequence/
</xs:complexType>
<xs:element name="renewCert" type="tns:renewCert"/>
<xs:complexType name="renewCert">
xs:sequence
<xs:element minOccurs="0" name="userInfo" type="tns:userInfo"/>
<xs:element minOccurs="0" name="origin" type="tns:certInfo"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="renewCertResponse" type="tns:renewCertResponse"/>
<xs:complexType name="renewCertResponse">
xs:sequence/
</xs:complexType>
<xs:element name="queryCertByCertId2" type="tns:queryCertByCertId2"/>
<xs:complexType name="queryCertByCertId2">
xs:sequence
<xs:element name="certId" type="xs:long"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertByCertId2Response" type="tns:queryCertByCertId2Response"/>
<xs:complexType name="queryCertByCertId2Response">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:queryCertResult"/>
</xs:sequence>
</xs:complexType>
<xs:element name="suspendCert" type="tns:suspendCert"/>
<xs:complexType name="suspendCert">
xs:sequence
<xs:element minOccurs="0" name="serialNumber" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="suspendCertResponse" type="tns:suspendCertResponse"/>
<xs:complexType name="suspendCertResponse">
xs:sequence/
</xs:complexType>
<xs:element name="enrollCertAA" type="tns:enrollCertAA"/>
<xs:complexType name="enrollCertAA">
xs:sequence
<xs:element minOccurs="0" name="userInfo" type="tns:userInfo"/>
<xs:element minOccurs="0" name="certReqBuf" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="aaCheckPoint" type="xs:string"/>
<xs:element minOccurs="0" name="passCode" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="enrollCertAAResponse" type="tns:enrollCertAAResponse"/>
<xs:complexType name="enrollCertAAResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:certInfo"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
</wsdl:types>
<wsdl:message name="enrollCertAA">
<wsdl:part element="tns:enrollCertAA" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertsResponse">
<wsdl:part element="tns:queryCertsResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getCertChainByAccount">
<wsdl:part element="tns:getCertChainByAccount" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="doScriptResponse">
<wsdl:part element="tns:doScriptResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="renewCertAAResponse">
<wsdl:part element="tns:renewCertAAResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadDeltaCRL">
<wsdl:part element="tns:downloadDeltaCRL" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="syncAccountInfo">
<wsdl:part element="tns:syncAccountInfo" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertBySerialNumberResponse">
<wsdl:part element="tns:queryCertBySerialNumberResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadCRLResponse">
<wsdl:part element="tns:downloadCRLResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="RaServiceUnavailable">
<wsdl:part element="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:part>
</wsdl:message>
<wsdl:message name="suspendCertResponse">
<wsdl:part element="tns:suspendCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadDeltaCRLResponse">
<wsdl:part element="tns:downloadDeltaCRLResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="revokeCertResponse">
<wsdl:part element="tns:revokeCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertBySerialNumber">
<wsdl:part element="tns:queryCertBySerialNumber" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="doScript">
<wsdl:part element="tns:doScript" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="pickupCertResponse">
<wsdl:part element="tns:pickupCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="enrollCertResponse">
<wsdl:part element="tns:enrollCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="unsuspendCertResponse">
<wsdl:part element="tns:unsuspendCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertByCertId2Response">
<wsdl:part element="tns:queryCertByCertId2Response" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="enrollCert">
<wsdl:part element="tns:enrollCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="enrollCertAAResponse">
<wsdl:part element="tns:enrollCertAAResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertByCertId2">
<wsdl:part element="tns:queryCertByCertId2" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getCertChainByAccountResponse">
<wsdl:part element="tns:getCertChainByAccountResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadCAResponse">
<wsdl:part element="tns:downloadCAResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadCA">
<wsdl:part element="tns:downloadCA" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCerts">
<wsdl:part element="tns:queryCerts" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertByCertId">
<wsdl:part element="tns:queryCertByCertId" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="synchroTemplate">
<wsdl:part element="tns:synchroTemplate" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="revokeCert">
<wsdl:part element="tns:revokeCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="synchroTemplateResponse">
<wsdl:part element="tns:synchroTemplateResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="renewCertResponse">
<wsdl:part element="tns:renewCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="renewCertAA">
<wsdl:part element="tns:renewCertAA" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="unsuspendCert">
<wsdl:part element="tns:unsuspendCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="pickupCert">
<wsdl:part element="tns:pickupCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="syncAccountInfoResponse">
<wsdl:part element="tns:syncAccountInfoResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="suspendCert">
<wsdl:part element="tns:suspendCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="renewCert">
<wsdl:part element="tns:renewCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadCRL">
<wsdl:part element="tns:downloadCRL" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertByCertIdResponse">
<wsdl:part element="tns:queryCertByCertIdResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="UserAPIServicePortType">
<wsdl:operation name="queryCertByCertId">
<wsdl:input message="tns:queryCertByCertId" name="queryCertByCertId">
</wsdl:input>
<wsdl:output message="tns:queryCertByCertIdResponse" name="queryCertByCertIdResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="unsuspendCert">
<wsdl:input message="tns:unsuspendCert" name="unsuspendCert">
</wsdl:input>
<wsdl:output message="tns:unsuspendCertResponse" name="unsuspendCertResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="queryCerts">
<wsdl:input message="tns:queryCerts" name="queryCerts">
</wsdl:input>
<wsdl:output message="tns:queryCertsResponse" name="queryCertsResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="downloadDeltaCRL">
<wsdl:input message="tns:downloadDeltaCRL" name="downloadDeltaCRL">
</wsdl:input>
<wsdl:output message="tns:downloadDeltaCRLResponse" name="downloadDeltaCRLResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="getCertChainByAccount">
<wsdl:input message="tns:getCertChainByAccount" name="getCertChainByAccount">
</wsdl:input>
<wsdl:output message="tns:getCertChainByAccountResponse" name="getCertChainByAccountResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="downloadCRL">
<wsdl:input message="tns:downloadCRL" name="downloadCRL">
</wsdl:input>
<wsdl:output message="tns:downloadCRLResponse" name="downloadCRLResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="enrollCert">
<wsdl:input message="tns:enrollCert" name="enrollCert">
</wsdl:input>
<wsdl:output message="tns:enrollCertResponse" name="enrollCertResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="syncAccountInfo">
<wsdl:input message="tns:syncAccountInfo" name="syncAccountInfo">
</wsdl:input>
<wsdl:output message="tns:syncAccountInfoResponse" name="syncAccountInfoResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="renewCertAA">
<wsdl:input message="tns:renewCertAA" name="renewCertAA">
</wsdl:input>
<wsdl:output message="tns:renewCertAAResponse" name="renewCertAAResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="downloadCA">
<wsdl:input message="tns:downloadCA" name="downloadCA">
</wsdl:input>
<wsdl:output message="tns:downloadCAResponse" name="downloadCAResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="doScript">
<wsdl:input message="tns:doScript" name="doScript">
</wsdl:input>
<wsdl:output message="tns:doScriptResponse" name="doScriptResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="synchroTemplate">
<wsdl:input message="tns:synchroTemplate" name="synchroTemplate">
</wsdl:input>
curl: (18) transfer closed with outstanding read data remaining
<wsdl:output message="tns:synchroTemp
from tengine.
The data returned by curl normally
wsdl:types
<xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://service.ra.tca.topca.cn/" xmlns:tns="http://service.ra.tca.topca.cn/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="queryCertResult">
xs:sequence
<xs:element name="totalSize" type="xs:int"/>
<xs:element maxOccurs="unbounded" minOccurs="0" name="certInfos" nillable="true" type="tns:certInfo"/>
<xs:element maxOccurs="unbounded" minOccurs="0" name="userInfos" nillable="true" type="tns:userInfo"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="certInfo">
xs:sequence
<xs:element minOccurs="0" name="certStatus" type="xs:string"/>
<xs:element minOccurs="0" name="certReqDate" type="xs:string"/>
<xs:element minOccurs="0" name="certReqTransid" type="xs:string"/>
<xs:element minOccurs="0" name="certReqNonce" type="xs:string"/>
<xs:element minOccurs="0" name="certReqBufType" type="xs:string"/>
<xs:element minOccurs="0" name="certReqChallenge" type="xs:string"/>
<xs:element minOccurs="0" name="certReqComment" type="xs:string"/>
<xs:element minOccurs="0" name="certApproveDate" type="xs:string"/>
<xs:element minOccurs="0" name="certRejectDate" type="xs:string"/>
<xs:element minOccurs="0" name="certSignDate" type="xs:string"/>
<xs:element minOccurs="0" name="certSerialNumber" type="xs:string"/>
<xs:element minOccurs="0" name="certNotBefore" type="xs:string"/>
<xs:element minOccurs="0" name="certNotAfter" type="xs:string"/>
<xs:element minOccurs="0" name="certIssuerHashMd5" type="xs:string"/>
<xs:element minOccurs="0" name="certIssuerDn" type="xs:string"/>
<xs:element minOccurs="0" name="certSubjectHashMd5" type="xs:string"/>
<xs:element minOccurs="0" name="certSubjectDn" type="xs:string"/>
<xs:element minOccurs="0" name="certSuspendDate" type="xs:string"/>
<xs:element minOccurs="0" name="certRevokeDate" type="xs:string"/>
<xs:element minOccurs="0" name="certRevokeReason" type="xs:string"/>
<xs:element minOccurs="0" name="certRenewalDate" type="xs:string"/>
<xs:element name="certRenewalPrevId" type="xs:int"/>
<xs:element name="certRenewalNextId" type="xs:int"/>
<xs:element name="certReqOverrideValidity" type="xs:int"/>
<xs:element name="id" type="xs:int"/>
<xs:element minOccurs="0" name="certReqBuf" type="xs:string"/>
<xs:element minOccurs="0" name="certSignBuf" type="xs:string"/>
<xs:element minOccurs="0" name="certPin" type="xs:string"/>
<xs:element minOccurs="0" name="certType" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcReq1" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcReq2" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcReq3" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcRep1" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcRep2" type="xs:string"/>
<xs:element minOccurs="0" name="certKmcRep3" type="xs:string"/>
<xs:element minOccurs="0" name="certDeliverMode" type="xs:string"/>
<xs:element minOccurs="0" name="certApproveAdmin1" type="xs:string"/>
<xs:element minOccurs="0" name="certApproveAdmin2" type="xs:string"/>
<xs:element minOccurs="0" name="certRenewemailDeliver" type="xs:string"/>
<xs:element minOccurs="0" name="certReqBufKmc" type="xs:string"/>
<xs:element minOccurs="0" name="certReqBufTypeKmc" type="xs:string"/>
<xs:element minOccurs="0" name="certSignBufKmc" type="xs:string"/>
<xs:element minOccurs="0" name="certSignBufP7Kmc" type="xs:string"/>
<xs:element minOccurs="0" name="certSignBufP7" type="xs:string"/>
<xs:element minOccurs="0" name="certSerialnumberKmc" type="xs:string"/>
<xs:element minOccurs="0" name="certTypeKmc" type="xs:string"/>
<xs:element minOccurs="0" name="certReqPublickey" type="xs:string"/>
<xs:element minOccurs="0" name="certReqPublickeyHashMd5" type="xs:string"/>
<xs:element minOccurs="0" name="certIdRandom" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="userInfo">
xs:sequence
<xs:element name="accountId" type="xs:int"/>
<xs:element minOccurs="0" name="userName" type="xs:string"/>
<xs:element minOccurs="0" name="userSurname" type="xs:string"/>
<xs:element minOccurs="0" name="userSerialnumber" type="xs:string"/>
<xs:element minOccurs="0" name="userEmail" type="xs:string"/>
<xs:element minOccurs="0" name="userOrganization" type="xs:string"/>
<xs:element minOccurs="0" name="userOrgunit" type="xs:string"/>
<xs:element minOccurs="0" name="userCountry" type="xs:string"/>
<xs:element minOccurs="0" name="userState" type="xs:string"/>
<xs:element minOccurs="0" name="userLocality" type="xs:string"/>
<xs:element minOccurs="0" name="userStreet" type="xs:string"/>
<xs:element minOccurs="0" name="userDns" type="xs:string"/>
<xs:element minOccurs="0" name="userIp" type="xs:string"/>
<xs:element minOccurs="0" name="userTitle" type="xs:string"/>
<xs:element minOccurs="0" name="userDescription" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField1" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField2" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField3" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField4" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField5" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField6" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField7" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField8" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField9" type="xs:string"/>
<xs:element minOccurs="0" name="userAdditionalField10" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="accountInfo">
xs:sequence
<xs:element minOccurs="0" name="parentHash" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="accountConfig" type="tns:accountConfigResult"/>
<xs:element minOccurs="0" name="accountOrganization" type="xs:string"/>
<xs:element minOccurs="0" name="accountOrgunit" type="xs:string"/>
<xs:element minOccurs="0" name="accountEmail" type="xs:string"/>
<xs:element minOccurs="0" name="accountStatus" type="xs:string"/>
<xs:element name="accountOrder" type="xs:int"/>
<xs:element name="accountQuantity" type="xs:int"/>
<xs:element minOccurs="0" name="accountServiceEndDate" type="xs:string"/>
<xs:element minOccurs="0" name="accountEnrollDate" type="xs:string"/>
<xs:element minOccurs="0" name="accountApproveDate" type="xs:string"/>
<xs:element minOccurs="0" name="accountRejectDate" type="xs:string"/>
<xs:element minOccurs="0" name="accountSuspendDate" type="xs:string"/>
<xs:element minOccurs="0" name="accountCertDeliver" type="xs:string"/>
<xs:element minOccurs="0" name="accountAutoDeliver" type="xs:string"/>
<xs:element name="accountCertOrder" type="xs:int"/>
<xs:element name="accountCertQuantity" type="xs:int"/>
<xs:element name="accountOcspOrder" type="xs:int"/>
<xs:element name="accountOcspQuantity" type="xs:int"/>
<xs:element name="accountMinAdmin" type="xs:int"/>
<xs:element minOccurs="0" name="accountType" type="xs:string"/>
<xs:element name="accountRenewDay" type="xs:int"/>
<xs:element minOccurs="0" name="accountServiceURL" type="xs:string"/>
<xs:element name="accountChoose" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="accountConfigResult">
xs:sequence
<xs:element minOccurs="0" name="certTemplate" type="xs:string"/>
<xs:element minOccurs="0" name="serviceUrl" type="xs:string"/>
<xs:element minOccurs="0" name="algorithm" type="xs:string"/>
<xs:element minOccurs="0" name="isDoubleCert" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="RaServiceUnavailable" type="tns:RaServiceUnavailable"/>
<xs:complexType name="RaServiceUnavailable">
xs:sequence
<xs:element name="errorCode_" nillable="true" type="xs:int"/>
<xs:element name="message_" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertByCertId" type="tns:queryCertByCertId"/>
<xs:complexType name="queryCertByCertId">
xs:sequence
<xs:element name="certId" type="xs:int"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertByCertIdResponse" type="tns:queryCertByCertIdResponse"/>
<xs:complexType name="queryCertByCertIdResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:queryCertResult"/>
</xs:sequence>
</xs:complexType>
<xs:element name="unsuspendCert" type="tns:unsuspendCert"/>
<xs:complexType name="unsuspendCert">
xs:sequence
<xs:element minOccurs="0" name="serialNumber" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="unsuspendCertResponse" type="tns:unsuspendCertResponse"/>
<xs:complexType name="unsuspendCertResponse">
xs:sequence/
</xs:complexType>
<xs:element name="queryCerts" type="tns:queryCerts"/>
<xs:complexType name="queryCerts">
xs:sequence
<xs:element minOccurs="0" name="userInfo" type="tns:userInfo"/>
<xs:element minOccurs="0" name="certInfo" type="tns:certInfo"/>
<xs:element name="pageIndex" type="xs:int"/>
<xs:element name="pageSize" type="xs:int"/>
<xs:element minOccurs="0" name="sqlTemplateFileName" type="xs:string"/>
<xs:element minOccurs="0" name="nextResultTag" type="xs:string"/>
<xs:element minOccurs="0" name="totalTag" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertsResponse" type="tns:queryCertsResponse"/>
<xs:complexType name="queryCertsResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:queryCertResult"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadDeltaCRL" type="tns:downloadDeltaCRL"/>
<xs:complexType name="downloadDeltaCRL">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadDeltaCRLResponse" type="tns:downloadDeltaCRLResponse"/>
<xs:complexType name="downloadDeltaCRLResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="getCertChainByAccount" type="tns:getCertChainByAccount"/>
<xs:complexType name="getCertChainByAccount">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="getCertChainByAccountResponse" type="tns:getCertChainByAccountResponse"/>
<xs:complexType name="getCertChainByAccountResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadCRL" type="tns:downloadCRL"/>
<xs:complexType name="downloadCRL">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadCRLResponse" type="tns:downloadCRLResponse"/>
<xs:complexType name="downloadCRLResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="enrollCert" type="tns:enrollCert"/>
<xs:complexType name="enrollCert">
xs:sequence
<xs:element minOccurs="0" name="userInfo" type="tns:userInfo"/>
<xs:element minOccurs="0" name="certReqBuf" type="xs:string"/>
<xs:element minOccurs="0" name="certReqChallenge" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="enrollCertResponse" type="tns:enrollCertResponse"/>
<xs:complexType name="enrollCertResponse">
xs:sequence/
</xs:complexType>
<xs:element name="syncAccountInfo" type="tns:syncAccountInfo"/>
<xs:complexType name="syncAccountInfo">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="syncAccountInfoResponse" type="tns:syncAccountInfoResponse"/>
<xs:complexType name="syncAccountInfoResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:accountInfo"/>
</xs:sequence>
</xs:complexType>
<xs:element name="renewCertAA" type="tns:renewCertAA"/>
<xs:complexType name="renewCertAA">
xs:sequence
<xs:element minOccurs="0" name="userInfo" type="tns:userInfo"/>
<xs:element minOccurs="0" name="origin" type="tns:certInfo"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="aaCheckPoint" type="xs:string"/>
<xs:element minOccurs="0" name="passCode" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="renewCertAAResponse" type="tns:renewCertAAResponse"/>
<xs:complexType name="renewCertAAResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:certInfo"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadCA" type="tns:downloadCA"/>
<xs:complexType name="downloadCA">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="downloadCAResponse" type="tns:downloadCAResponse"/>
<xs:complexType name="downloadCAResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="doScript" type="tns:doScript"/>
<xs:complexType name="doScript">
xs:sequence
<xs:element minOccurs="0" name="scriptName" type="xs:string"/>
<xs:element minOccurs="0" name="jsonMap" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="doScriptResponse" type="tns:doScriptResponse"/>
<xs:complexType name="doScriptResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="synchroTemplate" type="tns:synchroTemplate"/>
<xs:complexType name="synchroTemplate">
xs:sequence
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="synchroTemplateResponse" type="tns:synchroTemplateResponse"/>
<xs:complexType name="synchroTemplateResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:accountConfigResult"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertBySerialNumber" type="tns:queryCertBySerialNumber"/>
<xs:complexType name="queryCertBySerialNumber">
xs:sequence
<xs:element minOccurs="0" name="serialNumber" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertBySerialNumberResponse" type="tns:queryCertBySerialNumberResponse"/>
<xs:complexType name="queryCertBySerialNumberResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:queryCertResult"/>
</xs:sequence>
</xs:complexType>
<xs:element name="pickupCert" type="tns:pickupCert"/>
<xs:complexType name="pickupCert">
xs:sequence
<xs:element minOccurs="0" name="certPin" type="xs:string"/>
<xs:element minOccurs="0" name="certReqChallenge" type="xs:string"/>
<xs:element minOccurs="0" name="certReqBuf" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="pickupCertResponse" type="tns:pickupCertResponse"/>
<xs:complexType name="pickupCertResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:certInfo"/>
</xs:sequence>
</xs:complexType>
<xs:element name="revokeCert" type="tns:revokeCert"/>
<xs:complexType name="revokeCert">
xs:sequence
<xs:element minOccurs="0" name="serialNumber" type="xs:string"/>
<xs:element minOccurs="0" name="certReqChallenge" type="xs:string"/>
<xs:element minOccurs="0" name="certRevokeReason" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="revokeCertResponse" type="tns:revokeCertResponse"/>
<xs:complexType name="revokeCertResponse">
xs:sequence/
</xs:complexType>
<xs:element name="renewCert" type="tns:renewCert"/>
<xs:complexType name="renewCert">
xs:sequence
<xs:element minOccurs="0" name="userInfo" type="tns:userInfo"/>
<xs:element minOccurs="0" name="origin" type="tns:certInfo"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="renewCertResponse" type="tns:renewCertResponse"/>
<xs:complexType name="renewCertResponse">
xs:sequence/
</xs:complexType>
<xs:element name="queryCertByCertId2" type="tns:queryCertByCertId2"/>
<xs:complexType name="queryCertByCertId2">
xs:sequence
<xs:element name="certId" type="xs:long"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="queryCertByCertId2Response" type="tns:queryCertByCertId2Response"/>
<xs:complexType name="queryCertByCertId2Response">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:queryCertResult"/>
</xs:sequence>
</xs:complexType>
<xs:element name="suspendCert" type="tns:suspendCert"/>
<xs:complexType name="suspendCert">
xs:sequence
<xs:element minOccurs="0" name="serialNumber" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="suspendCertResponse" type="tns:suspendCertResponse"/>
<xs:complexType name="suspendCertResponse">
xs:sequence/
</xs:complexType>
<xs:element name="enrollCertAA" type="tns:enrollCertAA"/>
<xs:complexType name="enrollCertAA">
xs:sequence
<xs:element minOccurs="0" name="userInfo" type="tns:userInfo"/>
<xs:element minOccurs="0" name="certReqBuf" type="xs:string"/>
<xs:element minOccurs="0" name="accountHash" type="xs:string"/>
<xs:element minOccurs="0" name="aaCheckPoint" type="xs:string"/>
<xs:element minOccurs="0" name="passCode" type="xs:string"/>
<xs:element minOccurs="0" name="json" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="enrollCertAAResponse" type="tns:enrollCertAAResponse"/>
<xs:complexType name="enrollCertAAResponse">
xs:sequence
<xs:element minOccurs="0" name="return" type="tns:certInfo"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
</wsdl:types>
<wsdl:message name="enrollCertAA">
<wsdl:part element="tns:enrollCertAA" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertsResponse">
<wsdl:part element="tns:queryCertsResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getCertChainByAccount">
<wsdl:part element="tns:getCertChainByAccount" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="doScriptResponse">
<wsdl:part element="tns:doScriptResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="renewCertAAResponse">
<wsdl:part element="tns:renewCertAAResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadDeltaCRL">
<wsdl:part element="tns:downloadDeltaCRL" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="syncAccountInfo">
<wsdl:part element="tns:syncAccountInfo" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertBySerialNumberResponse">
<wsdl:part element="tns:queryCertBySerialNumberResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadCRLResponse">
<wsdl:part element="tns:downloadCRLResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="RaServiceUnavailable">
<wsdl:part element="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:part>
</wsdl:message>
<wsdl:message name="suspendCertResponse">
<wsdl:part element="tns:suspendCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadDeltaCRLResponse">
<wsdl:part element="tns:downloadDeltaCRLResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="revokeCertResponse">
<wsdl:part element="tns:revokeCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertBySerialNumber">
<wsdl:part element="tns:queryCertBySerialNumber" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="doScript">
<wsdl:part element="tns:doScript" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="pickupCertResponse">
<wsdl:part element="tns:pickupCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="enrollCertResponse">
<wsdl:part element="tns:enrollCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="unsuspendCertResponse">
<wsdl:part element="tns:unsuspendCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertByCertId2Response">
<wsdl:part element="tns:queryCertByCertId2Response" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="enrollCert">
<wsdl:part element="tns:enrollCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="enrollCertAAResponse">
<wsdl:part element="tns:enrollCertAAResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertByCertId2">
<wsdl:part element="tns:queryCertByCertId2" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getCertChainByAccountResponse">
<wsdl:part element="tns:getCertChainByAccountResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadCAResponse">
<wsdl:part element="tns:downloadCAResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadCA">
<wsdl:part element="tns:downloadCA" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCerts">
<wsdl:part element="tns:queryCerts" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertByCertId">
<wsdl:part element="tns:queryCertByCertId" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="synchroTemplate">
<wsdl:part element="tns:synchroTemplate" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="revokeCert">
<wsdl:part element="tns:revokeCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="synchroTemplateResponse">
<wsdl:part element="tns:synchroTemplateResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="renewCertResponse">
<wsdl:part element="tns:renewCertResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="renewCertAA">
<wsdl:part element="tns:renewCertAA" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="unsuspendCert">
<wsdl:part element="tns:unsuspendCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="pickupCert">
<wsdl:part element="tns:pickupCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="syncAccountInfoResponse">
<wsdl:part element="tns:syncAccountInfoResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="suspendCert">
<wsdl:part element="tns:suspendCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="renewCert">
<wsdl:part element="tns:renewCert" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="downloadCRL">
<wsdl:part element="tns:downloadCRL" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="queryCertByCertIdResponse">
<wsdl:part element="tns:queryCertByCertIdResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="UserAPIServicePortType">
<wsdl:operation name="queryCertByCertId">
<wsdl:input message="tns:queryCertByCertId" name="queryCertByCertId">
</wsdl:input>
<wsdl:output message="tns:queryCertByCertIdResponse" name="queryCertByCertIdResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="unsuspendCert">
<wsdl:input message="tns:unsuspendCert" name="unsuspendCert">
</wsdl:input>
<wsdl:output message="tns:unsuspendCertResponse" name="unsuspendCertResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="queryCerts">
<wsdl:input message="tns:queryCerts" name="queryCerts">
</wsdl:input>
<wsdl:output message="tns:queryCertsResponse" name="queryCertsResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="downloadDeltaCRL">
<wsdl:input message="tns:downloadDeltaCRL" name="downloadDeltaCRL">
</wsdl:input>
<wsdl:output message="tns:downloadDeltaCRLResponse" name="downloadDeltaCRLResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="getCertChainByAccount">
<wsdl:input message="tns:getCertChainByAccount" name="getCertChainByAccount">
</wsdl:input>
<wsdl:output message="tns:getCertChainByAccountResponse" name="getCertChainByAccountResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="downloadCRL">
<wsdl:input message="tns:downloadCRL" name="downloadCRL">
</wsdl:input>
<wsdl:output message="tns:downloadCRLResponse" name="downloadCRLResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="enrollCert">
<wsdl:input message="tns:enrollCert" name="enrollCert">
</wsdl:input>
<wsdl:output message="tns:enrollCertResponse" name="enrollCertResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="syncAccountInfo">
<wsdl:input message="tns:syncAccountInfo" name="syncAccountInfo">
</wsdl:input>
<wsdl:output message="tns:syncAccountInfoResponse" name="syncAccountInfoResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="renewCertAA">
<wsdl:input message="tns:renewCertAA" name="renewCertAA">
</wsdl:input>
<wsdl:output message="tns:renewCertAAResponse" name="renewCertAAResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="downloadCA">
<wsdl:input message="tns:downloadCA" name="downloadCA">
</wsdl:input>
<wsdl:output message="tns:downloadCAResponse" name="downloadCAResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="doScript">
<wsdl:input message="tns:doScript" name="doScript">
</wsdl:input>
<wsdl:output message="tns:doScriptResponse" name="doScriptResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="synchroTemplate">
<wsdl:input message="tns:synchroTemplate" name="synchroTemplate">
</wsdl:input>
<wsdl:output message="tns:synchroTemplateResponse" name="synchroTemplateResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="queryCertBySerialNumber">
<wsdl:input message="tns:queryCertBySerialNumber" name="queryCertBySerialNumber">
</wsdl:input>
<wsdl:output message="tns:queryCertBySerialNumberResponse" name="queryCertBySerialNumberResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="pickupCert">
<wsdl:input message="tns:pickupCert" name="pickupCert">
</wsdl:input>
<wsdl:output message="tns:pickupCertResponse" name="pickupCertResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="revokeCert">
<wsdl:input message="tns:revokeCert" name="revokeCert">
</wsdl:input>
<wsdl:output message="tns:revokeCertResponse" name="revokeCertResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="renewCert">
<wsdl:input message="tns:renewCert" name="renewCert">
</wsdl:input>
<wsdl:output message="tns:renewCertResponse" name="renewCertResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="queryCertByCertId2">
<wsdl:input message="tns:queryCertByCertId2" name="queryCertByCertId2">
</wsdl:input>
<wsdl:output message="tns:queryCertByCertId2Response" name="queryCertByCertId2Response">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="suspendCert">
<wsdl:input message="tns:suspendCert" name="suspendCert">
</wsdl:input>
<wsdl:output message="tns:suspendCertResponse" name="suspendCertResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="enrollCertAA">
<wsdl:input message="tns:enrollCertAA" name="enrollCertAA">
</wsdl:input>
<wsdl:output message="tns:enrollCertAAResponse" name="enrollCertAAResponse">
</wsdl:output>
<wsdl:fault message="tns:RaServiceUnavailable" name="RaServiceUnavailable">
</wsdl:fault>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="UserAPIServiceSoapBinding" type="tns:UserAPIServicePortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="queryCertByCertId">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="queryCertByCertId">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="queryCertByCertIdResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="unsuspendCert">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="unsuspendCert">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="unsuspendCertResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="queryCerts">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="queryCerts">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="queryCertsResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="downloadDeltaCRL">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="downloadDeltaCRL">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="downloadDeltaCRLResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="getCertChainByAccount">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="getCertChainByAccount">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="getCertChainByAccountResponse">
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="downloadCRL">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="downloadCRL">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="downloadCRLResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="enrollCert">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="enrollCert">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="enrollCertResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="syncAccountInfo">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="syncAccountInfo">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="syncAccountInfoResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="renewCertAA">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="renewCertAA">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="renewCertAAResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="downloadCA">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="downloadCA">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="downloadCAResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="doScript">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="doScript">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="doScriptResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="pickupCert">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="pickupCert">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="pickupCertResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="queryCertBySerialNumber">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="queryCertBySerialNumber">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="queryCertBySerialNumberResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="synchroTemplate">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="synchroTemplate">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="synchroTemplateResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="queryCertByCertId2">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="queryCertByCertId2">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="queryCertByCertId2Response">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="renewCert">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="renewCert">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="renewCertResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="revokeCert">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="revokeCert">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="revokeCertResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="suspendCert">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="suspendCert">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="suspendCertResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="enrollCertAA">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="enrollCertAA">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="enrollCertAAResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="RaServiceUnavailable">
<soap:fault name="RaServiceUnavailable" use="literal"/>
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="UserAPIService">
<wsdl:port binding="tns:UserAPIServiceSoapBinding" name="UserAPIServicePort">
<soap:address location="http://sm2ssl-loadtest.itrus.com.cn/services/userAPI"/>
</wsdl:port>
</wsdl:service>
from tengine.
tengine access_log & dubug error_log
2023/08/22 09:25:33 [notice] 11298#0: 371440 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:33 [notice] 11298#0: 371440 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:33 [notice] 11298#0: 371440 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:34 [info] 11298#0: 371440 client ..86.115 closed keepalive connection
2023/08/22 09:25:48 [notice] 11299#0: 371442 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:48 [notice] 11299#0: 371442 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:48 [notice] 11299#0: 371442 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:50 [error] 11299#0: 371442 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:25:50 [info] 11299#0: 371442 client ..86.115 closed keepalive connection
2023/08/22 09:25:52 [notice] 11294#0: 371445 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:52 [notice] 11294#0: 371445 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:52 [notice] 11294#0: 371445 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:54 [error] 11294#0: 371445 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:25:56 [error] 11294#0: 371445 upstream timed out (110: Connection timed out) while reading response header from upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:80/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:25:56 [info] 11294#0: 371445 client ..86.115 closed keepalive connection
2023/08/22 09:25:58 [notice] 11301#0: 371448 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:58 [notice] 11301#0: 371448 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:25:58 [notice] 11301#0: 371448 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:26:00 [error] 11301#0: 371448 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:26:00 [info] 11301#0: 371448 client ..86.115 closed keepalive connection
2023/08/22 09:26:08 [notice] 11298#0: 371451 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:26:08 [notice] 11298#0: 371451 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:26:08 [notice] 11298#0: 371451 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:26:10 [error] 11298#0: 371451 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:26:10 [info] 11298#0: 371451 client ..86.115 closed keepalive connection
2023/08/22 09:27:35 [notice] 11300#0: 371454 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:35 [notice] 11300#0: 371454 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:35 [notice] 11300#0: 371454 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:37 [error] 11300#0: 371454 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:27:39 [error] 11300#0: 371454 upstream timed out (110: Connection timed out) while reading response header from upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:80/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:27:39 [info] 11300#0: 371454 client ..86.115 closed keepalive connection
2023/08/22 09:27:40 [notice] 11298#0: 371457 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:40 [notice] 11298#0: 371457 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:40 [notice] 11298#0: 371457 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:41 [info] 11298#0: 371457 client ..86.115 closed keepalive connection
2023/08/22 09:27:42 [notice] 11301#0: 371459 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:42 [notice] 11301#0: 371459 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:42 [notice] 11301#0: 371459 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:43 [info] 11301#0: 371459 client ..86.115 closed keepalive connection
2023/08/22 09:27:45 [notice] 11298#0: 371461 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:45 [notice] 11298#0: 371461 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:45 [notice] 11298#0: 371461 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:47 [error] 11298#0: 371461 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:27:49 [info] 11298#0: 371461 client ..86.115 closed keepalive connection
2023/08/22 09:27:50 [notice] 11298#0: 371464 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:50 [notice] 11298#0: 371464 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:50 [notice] 11298#0: 371464 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:51 [info] 11298#0: 371464 client ..86.115 closed keepalive connection
2023/08/22 09:27:52 [notice] 11298#0: 371466 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:52 [notice] 11298#0: 371466 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:52 [notice] 11298#0: 371466 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:54 [error] 11298#0: 371466 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:27:56 [info] 11298#0: 371466 client ..86.115 closed keepalive connection
2023/08/22 09:27:57 [notice] 11298#0: 371469 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:57 [notice] 11298#0: 371469 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:57 [notice] 11298#0: 371469 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:57 [info] 11298#0: 371469 client ..86.115 closed keepalive connection
2023/08/22 09:27:59 [notice] 11298#0: 371471 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:59 [notice] 11298#0: 371471 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:27:59 [notice] 11298#0: 371471 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:01 [error] 11298#0: 371471 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:28:01 [info] 11298#0: 371471 client ..86.115 closed keepalive connection
2023/08/22 09:28:02 [notice] 11294#0: 371474 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:02 [notice] 11294#0: 371474 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:02 [notice] 11294#0: 371474 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:03 [info] 11294#0: 371474 client ..86.115 closed keepalive connection
2023/08/22 09:28:04 [info] 11298#0: 371476 client sent invalid method while reading client request line, client: 65.49.1.69, server: topra-demo.itrus.com.cn, request: "��� {� w��崡雅i2??�R�5��€?勩?衟衇搤?? �????????
2023/08/22 09:28:04 [notice] 11294#0: 371477 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:04 [notice] 11294#0: 371477 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:04 [notice] 11294#0: 371477 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:06 [info] 11294#0: 371477 client ..86.115 closed keepalive connection
2023/08/22 09:28:11 [notice] 11298#0: 371479 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:11 [notice] 11298#0: 371479 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:11 [notice] 11298#0: 371479 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:11 [info] 11298#0: 371479 client ..86.115 closed keepalive connection
2023/08/22 09:28:15 [notice] 11298#0: 371481 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:15 [notice] 11298#0: 371481 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:15 [notice] 11298#0: 371481 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:17 [error] 11298#0: 371481 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:28:19 [error] 11298#0: 371481 upstream timed out (110: Connection timed out) while reading response header from upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:80/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:28:19 [info] 11298#0: 371481 client ..86.115 closed keepalive connection
2023/08/22 09:28:21 [notice] 11298#0: 371484 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:21 [notice] 11298#0: 371484 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:21 [notice] 11298#0: 371484 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:24 [info] 11298#0: 371484 client ..86.115 closed keepalive connection
2023/08/22 09:28:25 [notice] 11298#0: 371486 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:25 [notice] 11298#0: 371486 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:25 [notice] 11298#0: 371486 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:26 [info] 11298#0: 371486 client ..86.115 closed keepalive connection
2023/08/22 09:28:30 [notice] 11298#0: 371488 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:30 [notice] 11298#0: 371488 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:30 [notice] 11298#0: 371488 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:32 [error] 11298#0: 371488 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:28:35 [info] 11298#0: 371488 client ..86.115 closed keepalive connection
2023/08/22 09:28:37 [notice] 11299#0: 371491 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:37 [notice] 11299#0: 371491 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:37 [notice] 11299#0: 371491 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:40 [error] 11299#0: 371491 upstream timed out (110: Connection timed out) while reading response header from upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:80/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:28:42 [error] 11299#0: 371491 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:28:42 [info] 11299#0: 371491 client ..86.115 closed keepalive connection
2023/08/22 09:28:43 [notice] 11298#0: 371494 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:43 [notice] 11298#0: 371494 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:43 [notice] 11298#0: 371494 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:44 [info] 11298#0: 371494 client ..86.115 closed keepalive connection
2023/08/22 09:28:46 [notice] 11298#0: 371496 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:46 [notice] 11298#0: 371496 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:46 [notice] 11298#0: 371496 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:48 [error] 11298#0: 371496 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:28:50 [error] 11298#0: 371496 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:80/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:28:50 [info] 11298#0: 371496 client ..86.115 closed keepalive connection
2023/08/22 09:28:51 [notice] 11299#0: 371499 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:51 [notice] 11299#0: 371499 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:51 [notice] 11299#0: 371499 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:54 [error] 11299#0: 371499 upstream timed out (110: Connection timed out) while reading response header from upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:80/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:28:54 [info] 11299#0: 371499 client ..86.115 closed keepalive connection
2023/08/22 09:28:56 [notice] 11299#0: 371501 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:56 [notice] 11299#0: 371501 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:56 [notice] 11299#0: 371501 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:28:58 [error] 11299#0: 371501 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:29:01 [error] 11299#0: 371501 upstream timed out (110: Connection timed out) while reading upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:80/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:29:02 [notice] 11299#0: 371504 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:02 [notice] 11299#0: 371504 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:02 [notice] 11299#0: 371504 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:03 [info] 11299#0: 371504 client ..86.115 closed keepalive connection
2023/08/22 09:29:05 [notice] 11298#0: 371506 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:05 [notice] 11298#0: 371506 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:05 [notice] 11298#0: 371506 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:07 [info] 11298#0: 371506 client ..86.115 closed keepalive connection
2023/08/22 09:29:10 [notice] 11300#0: 371508 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:10 [notice] 11300#0: 371508 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:10 [notice] 11300#0: 371508 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:10 [info] 11300#0: 371508 client ..86.115 closed keepalive connection
2023/08/22 09:29:13 [notice] 11298#0: 371510 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:13 [notice] 11298#0: 371510 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:13 [notice] 11298#0: 371510 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:15 [error] 11298#0: 371510 upstream timed out (110: Connection timed out) while reading response header from upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:80/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:29:17 [error] 11298#0: 371510 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:29:17 [info] 11298#0: 371510 client ..86.115 closed keepalive connection
2023/08/22 09:29:19 [notice] 11298#0: 371513 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:19 [notice] 11298#0: 371513 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:19 [notice] 11298#0: 371513 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:29:21 [error] 11298#0: 371513 upstream timed out (110: Connection timed out) while connecting to upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:81/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:29:24 [error] 11298#0: 371513 upstream timed out (110: Connection timed out) while reading upstream, client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", upstream: "http://..173.128:80/services/userAPI?wsdl", host: "..54.34:9999"
2023/08/22 09:29:54 [info] 11299#0: 371516 client sent invalid method while reading client request line, client: 47.92.71.160, server: newca-demo.itrus.com.cn, request: "������ ?�"�擗钪娞旅j敒Q杦T?`靠XD鹺I?�, V???? ???⒗$??? k j g @?????????
2023/08/22 09:29:54 [info] 11300#0: 371517 client sent invalid method while reading client request line, client: 47.92.73.109, server: testra-demo.itrus.com.cn, request: "������ ?�9 ??�WN緃×!��Y兿x?奠?
2023/08/22 09:33:43 [notice] 11298#0: 371518 "^/enterprise" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:33:43 [notice] 11298#0: 371518 "^/enterprise/enrollAdminCert" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: "..54.34:9999"
2023/08/22 09:33:43 [notice] 11298#0: 371518 "^/$" does not match "/services/userAPI", client: ..86.115, server: testra-demo.itrus.com.cn, request: "GET /services/userAPI?wsdl HTTP/1.1", host: ".*.54.34:9999"
2023/08/22 09:33:43 [info] 11298#0: *371518 client ..86.115 closed keepalive connection
from tengine.
The current problem seems to be that Tengine (nginx) is processing the data returned by Upstream, HTTP_ Due to network reasons, the body data was not fully received, but the status record value still returned 200 instead of 5xx. It is not confirmed whether it is related to the soap protocol used by the application, and similar situations have not been encountered in other HTTP requests.
from tengine.
What is the proxy buffer setting for your tengine specifically?
from tengine.
Hello, the parameter settings in the configuration file are shown in the screenshot. Please check if there are any setting parameters you described, where:
client_header_buffer_size 2k
large_client_header_buffers 4k
client_max_body_size 8m
from tengine.
Check your 'proxy_buffering' on nginx1 and CA-nginx
from tengine.
Hello, proxy is not set in nginx1_ Buffering parameter settings, CA nginx, please wait here to check the configuration file
As shown in the screenshot above, there is no defined proxy for nginx1 configuration_ Buffering parameter
from tengine.
Hello, We have checked that there is no definition of proxy in the CA nginx configuration file_ Parameter settings for buffering.
from tengine.
Hello, are there any other directions for investigation or possible solutions to avoid? Looking forward to your reply
from tengine.
I reproduce this scenario with a small configuration:
worker_processes 1;
error_log logs/error.log debug;
events {
worker_connections 1024;
}
stream {
server {
listen 2888;
content_by_lua_block {
ngx.say("HTTP/1.1 200 OK\r\nServer: Tengine\r\nContent-Length: 7777\r\nConnection: keep-alive\r\nkeep-alive: 60\r\n\r\n");
}
}
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr|$status|$remote_user|$time_local|$request|$status|$body_bytes_sent|$upstream_addr|$upstream_status|';
access_log logs/access.log main;
sendfile on;
keepalive_timeout 65;
proxy_http_version 1.1;
proxy_intercept_errors on;
proxy_next_upstream error http_500 http_502 http_503 http_504;
server {
listen 8080;
server_name localhost;
proxy_buffering on;
location / {
proxy_pass http://127.0.0.1:2888;
}
}
}
When the curl -v 127.0.0.1:8080
command is executed, the log status is 200 but the curl prompt fails.
The reason is that when the upstream gets the header, it is sent to the client immediately, and the status is set to 200 at the same time. When the reading of the body fails, call ngx_http_upstream_finalize_request
to pass in a 502 error, but the header has been sent, the status will not be set, only data flush will be performed.
if (!u->header_sent
|| rc == NGX_HTTP_REQUEST_TIME_OUT
|| rc == NGX_HTTP_CLIENT_CLOSED_REQUEST)
{
ngx_http_finalize_request(r, rc);
return;
}
flush = 0;
if (rc >= NGX_HTTP_SPECIAL_RESPONSE) {
rc = NGX_ERROR;
flush = 1;
}
...
if (rc == 0) {
if (ngx_http_upstream_process_trailers(r, u) != NGX_OK) {
ngx_http_finalize_request(r, NGX_ERROR);
return;
}
rc = ngx_http_send_special(r, NGX_HTTP_LAST);
} else if (flush) {
r->keepalive = 0;
rc = ngx_http_send_special(r, NGX_HTTP_FLUSH);
}
I tested nginx is the same behavior. And I didn't find a way to set the status without modifying the code.
from tengine.
Related Issues (20)
- 如何查看tengine是否利用上qat HOT 2
- 各位,问一下ngx_http_reqstat_module模块捕获不到下载文件和上传文件的流量吗?
- 修改源码隐藏headers 中server 信息,403报错中没有隐藏。其他请求中隐藏了
- tengine + xquic 上传文件超过 200K 后出现文件内容损坏 HOT 4
- 希望能够将tengine的nginx升级至1.26.1 HOT 4
- 如何实现通过tengine直接上传文件和查看文件上传进度 HOT 5
- 能否支持自定义http code 的统计监控
- xquic 下载大文件会消耗同等文件大小的内存 HOT 1
- 使用tengine的dyups module做动态负载均衡时,Nginx升级到1.19.2以上后,dyups模块出现读body数据偶发不完整的问题 HOT 2
- Tengine Xquic 模块支持校验客户端证书 HOT 1
- ngx_http_reqstat_module 模块无法统计 xquic 入向流量 bytes_in 大小
- tengine健康检查模块支持stream中使用
- 动态配置更新支持新增Server块和Listen吗? HOT 2
- HOW TO CONFIGURE TENGINE SERVER HOT 3
- dtls集成,nginx发生崩溃 HOT 6
- 基于Tongsuo的证书压缩功能使用 HOT 1
- auto/lib/openssl/make: no-threads选项与enable-async选项似乎是冲突的, 导致异步模式无法生效
- 401
- health-check for https 健康检查
- Security Vulnerability - Action Required: Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') vulnerability in your project
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tengine.