위챗 공중호 개발의 경험과 구덩이

2168 단어
회사에서 위챗 결제를 개발하려고 하기 때문에 저는 위챗 오픈 플랫폼의 API 문서를 보기 시작했습니다. 위챗을 발견하고 2주 동안 개발을 했고 웹 페이지의 앞뒤 부분을 모두 개발했습니다. 크고 작은 구덩이를 만났습니다. 기록하세요.
개발 준비
  • 등록 위챗 공중번호(서비스 번호)
  • 위챗 결제 기능 개통
  • 개발자 계정 등록(위챗 오픈 플랫폼)
  • 개발자 계정에 자신의 위챗 공식계정을 연결
  • 테스트 공중번호 신청
  • 위챗 공식 번호 플랫폼에서 기본 매개 변수 얻기
  • token
  • test_token
  • appid
  • appsecret
  • mch_id
  • test_appid
  • test_appsecret
  • server_notify
  • key

  • 서버가 기본 매개 변수를 가져오고 있습니다
  • 검증 서버80443 포트, GET 요청 접수, 서명 확인)
  • 수령ACESS_TOKEN(독립 서비스로 갱신)
  • 구성JSSDK
  • 획득openidoauth2.0
  • 위챗 개발
  • 위챗 결제
  • 주입JSSDK config사실 주입하지 않아도 성공
  • 주입 성공 후 Agent 위챗 결제 지원 여부 검증
  • 클라이언트가 정보를 입력한 후 결제를 클릭한 후
  • 서버에서 입력 검사를 한 후 주문서와 사용자 정보를 저장한 후 통일된 단일 인터페이스를 통해 주문서를 생성하여 클라이언트에게 발송
  • JSSDK 홈페이지의 위챗 결제 인터페이스를 사용하지 말고 위챗 결제 상세 페이지의 예시적인 위챗 결제 인터페이스로 결제
  • 결제 성공 후 wx.closeWindow() 인터페이스로 페이지 닫기
  • 위챗은 서버에 리셋을 한 다음에 서버가 주문 상태를 바꾸고 고객지원 메시지 인터페이스를 통해 고객에게 메시지 피드백을 보낸다(중복 검증 주의)
  • 위챗 고객지원 메시지
  • 리셋을 받아 서명과 무작위 문자열이 정확한지 확인
  • 정확하면 고객센터 발표
  • 위챗 이벤트 알림 및 패시브 메시지 응답
  • 개발자 설정에서 서버 리셋 주소를 설정
  • 위챗이 사용자의 특정 동작을 받았을 때 서버에 이벤트 알림(POST)을 보내고 개발자가 직접 답장xml 또는 ''하면 된다

  • 주의 요점
  • 위챗SessionID은 계속 변하기 때문에 Session로 저장할 수 없습니다openid. 저는 cookies 저장소
  • 를 사용합니다.
  • 위챗 결제의 결제 페이지는 사이트 주소와 잘 일치합니다(http://www.abc.com및http://www.abc.com/) 모두 다릅니다. 사이트 주소가 조금 달라도 안 됩니다
  • 위챗 결제의 결제 sdk 낡은 것과 새 것은 위챗 결제 페이지에 표시되어 있지 않습니다. (JSSDK 설명 문서에 있는 결제 API는 낡은 것), 절대 낡은 것을 사용하지 말고 새 것을 사용하면 됩니다
  • 위챗 API에는 다양한 스타일의 변수명(noncestrnonce_strnonceStrtimestamptimeStamp) 부디 조심하세요
  • 개발 시간
  • 채택nodejs개발, 위챗페이의 각종 구덩이 밟기 7일
  • 백엔드CRUD 영업일 기준
  • 고객센터 연락 1시간 미만
  • 위챗 이벤트 알림 및 패시브 메시지에 대한 응답이 1시간 미만
  • PS:계속해서 위챗 개발에 대해 불평하시는 것을 환영합니다.

    좋은 웹페이지 즐겨찾기