NetSuite 검색을 100 개 항목 제한을 초과하여 확장하려고합니다. 파이썬 앱에서 zeep을 통해 SOAP를 사용하고 있지만 먼저 Postman에서 테스트하고 있습니다. CustomRecordSearchAdvanced를 사용하여 검색의 첫 페이지를 성공적으로 가져올 수 있습니다 . 그러나 searchMoreWithId 요청 에 대한 응답의 nsid를 사용 하면 다음 오류가 발생합니다.
<faultcode xmlns:ns1="http://xml.apache.org/axis/">ns1:Client.NoSOAPAction</faultcode>
<faultstring>Invalid SOAPAction header: Search</faultstring>
SOAP 헤더는 두 경우 모두 정확히 동일합니다. 작동하는 첫 번째 검색의 SOAP 본문은 다음과 같습니다.
<soapenv:Body>
<search xsi:type='platformMsgs:SearchRequest'>
<searchRecord xsi:type='setupCustom:CustomRecordSearchAdvanced' savedSearchId='1234'/>
</search>
</soapenv:Body>
실패한 두 번째 검색에 대한 SOAP 본문은 다음과 같습니다. 첫 번째 검색의 응답에서 정확히 searchId를 복사합니다.
<soapenv:Body>
<searchMoreWithId xsi:type='platformMsgs:SearchMoreWithIdRequest'>
<searchId xsi:type='xsd:string'>WEBSERVICES_************</searchId>
<pageIndex xsi:type='xsd:int'>2</pageIndex>
</searchMoreWithId>
</soapenv:Body>
내가 사용하는 WSDL은 https://webservices.na1.netsuite.com/wsdl/v2020_1_0/netsuite.wsdl 이며 WSDL에 SOAP 작업이있는 섹션이 없더라도 작동합니다.
SOAP 오류 내부의 메시지는 다음과 같습니다.
잘못된 SOAPAction 헤더 : 검색
WSDL에 보면, 헤더 값은해야 searchMoreWithId
하지 Search
.
SOAPAction
각 <soap:operation>
WSDL 내 에서 헤더 에 사용할 값을 찾을 수 있습니다 . 요청하는 작업의 이름은 적절한 헤더와 일치해야합니다. 헤더 를 searchMoreWithId
사용 하여에 요청하고 Search
여기에서 오류 메시지를 보냅니다. 헤더 값을로 변경하고 searchMoreWithId
다시 시도하십시오.
있음을 유의하십시오 SOAPAction
헤더는 HTTP를 헤더가 아닌 SOAP 헤더 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다