홈>
다음 코드를 사용하여 C # 앱을 Magento 1.6 (Magento SOAP V2를 통해)에 연결하려고합니다.
using (Mage_Api_Model_Server_Wsi_HandlerPortTypeClient proxy = new Mage_Api_Model_Server_Wsi_HandlerPortTypeClient())
{
string sessionId = proxy.login("XXXXXXX", "XXXXXXXXXXX");
Console.WriteLine(sessionId);
}
그리고 다음과 같은 오류가 발생합니다 :
Error in deserializing body of reply message for operation 'login'.
Fiddler를 사용하여 전송을 검사 한 결과입니다.
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:Magento">
<SOAP-ENV:Body>
<ns1:loginResponseParam>
<result>fc094df96480dbbcdXXXXXXXXXXXXXXX</result>
</ns1:loginResponseParam>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
사용하고 있습니다 :
- 마 젠토 V 1.6
- 마 젠토 SOAP V2
- WS-I 준수 (예 : 시스템/구성/서비스/Magento Core API/WS-I 준수가 예로 설정 됨)
- 콘텐츠 유형 수정 : 콘텐츠 유형 오류 소비 .Net의 Magento 1.5 웹 서비스
- VS 2010
- .Net 3.5
이 문제를 어떻게 해결 (또는 디버깅) 할 수있는 아이디어가 있습니까?
- 답변 # 1
- 답변 # 2
위의 모든 답변을 시도했지만 문제가 해결되지 않았습니다. 특정 경우에는데이터 멤버라는 것을 알았습니다. DateTime 유형으로 인해 문제가 발생합니다. 이전에는 데이터를
2015-07-21T13 : 55 : 30.5962405 + 05 : 30->작동하지 않음
그런 다음
2015-03-29T09 : 30 : 47->작업일자가 어떻게 직렬화 할 수 없었는지
- 답변 # 3
전체 "Web Services == Soap == WS- *"개발 스택에 대해 매우익숙하지 않습니다. Magento 1.6이 API에 "WS-I Compliance"라는 것을 소개했습니다. V2 비누 URL을 사용해야하며
<예>(Magento 시스템 관리자에서). 이것은 마 젠토에게System -> Configuration -> Magento Core Api -> General Settings -> WS-I Compliance
soap_wsi
를 사용하도록 지시 할 것입니다soap_v2
대신 핸들러 매니저.에서 Magento Soap 요청을 처리하는 컨트롤러를 볼 수 있습니다.app/code/core/Mage/Api/controllers/V2/SoapController.php
이것이 도움이 될지 모르겠지만 포함 시켰습니다
WS-I 준수
그리고 단어가 일치하여 외부에서 도움이 될 것입니다.
- 답변 # 4
Solo tienes que agregar la etiqueta readQuoatas dentro de mtomMessage
관련 자료
- postgresql - 오류 메시지에서 정밀도 1, 스케일 0의 의미?
- python - 여기에 " 'str'object has no attribute 'str'", 'occurred at index 0' "라는 오류 메시지가 표시되는 이유
- spring - axios를 사용하여 Java에서 Vuejs로 오류 메시지 보내기
- node.js - 오류 메시지 - electron을 실행하는 데 필요한 종속성이 누락 된 것 같습니다
- discordpy 오류로 작업을 다시 시작 하시겠습니까? [자동 메시지]
- swift - Xcode 디버그 콘솔에서 "인식 할 수없는 선택기"라는 오류 메시지가 나타나는 이유
- html - 빈 th - fields에 대해 오류 메시지를 던지는 방법은 무엇입니까?
- r - 집계 SD 기능에서 오류 메시지를 해결하는 방법은 무엇입니까?
- snowflake cloud data platform - jdbc 드라이버에서 통신 오류가 발생했습니다 메시지 - http 상태 = 400
- javascript - vee-validate/yup이있는 vuejs3 앱에서 사용자 지정 오류 메시지를 표시하는 방법은 무엇입니까?
- java - Android Studio를 사용하여 Firebase에서 하위 항목이 누락 된 경우 오류 메시지를 설정하는 방법
- c - 5 자 이상 입력하면 오류 메시지를 어떻게 인쇄 할 수 있습니까?
- python : 파이썬 imap_tools 메일 오류 메시지 가져 오기
- 양식 제출 후 PHP로 오류 메시지를 표시하는 방법
- vue.js - 하나의 Vue 구성 요소에 대해 Vee Validate 오류 메시지를 재정의하는 방법은 무엇입니까?
- c# - getwaiter에 대한 오류 메시지가 나타납니다
- reactjs - 에러 메시지 - touchableopacity는 기능이 아닙니다
- foreign keys - mysql 서버가 전체 오류 메시지를 반환하지 않습니다
- xml - 이 오류 요소 유형 "메시지"를 두 번 이상 선언하면 안되는 이유
- discord.py - Discord Bot이 단어를 포함한 모든 메시지가 아닌 특정 메시지에 답장하도록 만드는 방법
관련 질문
- java : WSDL 및 AXIS ADB
- java : 예외로 인해 SOAP 메시지를 만들 수 없었습니다. com.sun.xml.internal.ws.encoding.soapbindingcodec.decode에서 Stax Reader 또는 Writer를 만들 수 없습니다.
- PHP Magento SOAP-ERROR : WSDL 구문 분석 : URLPATH에서로드 할 수 없음
- java : [saajsoapmessage에 대한 엔드 포인트 매핑이 없습니다
- PHP 또는 jQuery에서 NAV Dynamics SOAP WebService를 소비하는 방법은 무엇입니까?
- SOAP 요청 java에서 헤더를 설정하는 방법
- Java 및 SOAP 웹 서비스 | 이름 공간이 NS2에서 NS2에서 NS4에서 NS4로 변경되는 이유는 무엇입니까?
- java : 클라이언트의 SOAP 웹 서비스 구현을 위해 CXF를 사용하여 요청 방법을 "POST"로 설정
- SOAPUI 오류 : 태그를 닫지 않습니다
- PHP Soapclient는 WSDL을로드하지 않습니다
이것은 실제로 고치기 매우 쉽다. magento에 연결하는 데 사용하는 응용 프로그램의 web.config/app.config를 엽니 다
이 줄을 찾으십시오
바인딩 구성 및 바인딩 유형을 기록하십시오. 위의 basicHttpBinding/BasicBinding에서다음 구성 섹션을 찾으십시오.
여기에서 중첩을 알립니다. 바인딩->바인딩 유형->이름으로 바인딩 요소
Visual Studio가 프록시를 생성 할 때 리더 할당량에 제공되는 기본값은 모든 데이터를 보유 할만큼 크지 않습니다. 위의 예에서와 같이 단순히 모두 늘리십시오.