2011-09-25 2 views
7

그물을 트롤링했으며 이미지 또는 첨부 파일을 SOAP를 사용하여 웹 서비스로 전송할 때 문서를 찾을 수 없습니다.SOAP를 사용하여 갤러리에서 웹 서비스로 이미지 전송

텍스트 데이터를 잘 보냈지 만 텍스트 데이터와 함께 갤러리의 이미지를 보내야하는데, 이는 또 다른 문제를 야기합니다. 한 번에 두 개 이상의 비동기 작업을 수행합니다. 보낼 레코드에 이미지가있는 경우 총 4 건의 전화를해야합니다.

  1. 텍스트 데이터를 보냅니다.
  2. 파일이 이미 서버에 있는지 확인하십시오.
  3. 파일을 보내십시오.
  4. 서버에서 보낸 u_id를 사용하여 파일을 서버의 레코드와 링크하십시오.

그때 보내 문자열로 파일을 변환하는 Base64로 방법을 사용하는 것이 좋습니다했지만 나는 느낌이 SOAP (의도 웃기)를 사용하여 그 일을하는 청소기 방법을 프로그래머가 있습니다.

모든 의견을 크게 높이 셨습니다.

* httpClient를 사용하고 있었지만 SOAP을 사용하여 변경해야한다는 점에 유의하십시오. 안드로이드에 대해 비교적 새로운 것 같습니다. 그래서 내가 바보 같은 말을했다면 용서하십시오.

답변

6

SOAP을 사용하여 첨부 파일을 보내는 데는 세 가지 방법이 있습니다.

  • SwA base64Binary 인
  • - 첨부
  • MTOM

base64Binary 인이 SOAP 메시지에서 base64로 인라인으로 첨부 파일을 전송과 SOAP. SOAP 메시지에 포함 된 Attachment. 메시지를 33 % 나 늘려줍니다.

SWA는 첨부 파일을 SOAP 메시지 외부로 보냅니다. SOAP 메시지에는 첨부 파일에 대한 참조가 들어 있습니다. 그러나 SOAP infoset에는 첨부 파일이 포함되어 있지 않습니다.

MTOM 두 가지의 장점을 모두 제공합니다. 첨부 파일은 참조가있는 SOAP 메시지 외부로 전송되지만 첨부 파일은 SOAP 메시지에 포함 된 것처럼 나타납니다 (SOAP infoset에 첨부 파일이 포함되어 있음)

MTOM을 사용하여 보낸 첨부 파일이 그대로 나타나기 때문에 첨부는 SOAP 메시지의 일부이므로 다른 WS- * QOS (서비스 품질) 속성을 사용할 수 있습니다. 예를 들어 MTOM 메시지는 WS-Security를 ​​사용하여 서명하고 암호화 할 수 있습니다. 따라서 추가 사양없이 보안 첨부 파일을 전송하는 메커니즘을 제공합니다.

This 예제에서는 Apache AXIS2에서 MTOM을 사용하는 방법을 보여줍니다.

관련 문제