簡體   English   中英

WSO2 API管理器-具有非XML響應的發布API

[英]WSO2 API Manager - Publishing API with non-XML response

我正在嘗試通過WSO2 API管理器代理以下調用

http://api.qrserver.com/v1/create-qr-code/?data=HelloWorld&size=100x100

返回一個QR碼圖像。 我使用http://api.qrserver.com/v1/作為端點發布了API,在那里沒有問題。 但是,當我通過API管理器執行調用時,出現以下錯誤:

curl -H 'Authorization:Bearer 7q6W4LteX9idveFWbSa_oaGPhVsa' 'http://ec2-xx-xx-xx-xx.eu-west-1.compute.amazonaws.com:8280/qrcode/1.0.0/create-qr-code/?data=HelloWorld&size=100x100'

<Exception>Unexpected response received. HTTP response code : 200 HTTP status : OK exception : com.ctc.wstx.exc.WstxIOException: Invalid UTF-8 start byte 0x89 (at char #1, byte #-1)</Exception>

直接執行呼叫時,響應標頭對我來說似乎很好(正確設置了mime類型image / png),但是WSO2 API代理拒絕響應...我在做什么錯? 用響應mediaType =“ image / png”設置wadl文件似乎也沒有幫助。

提前致謝

此問題是由於默認情況下API管理器的axis2.xml中沒有匹配的消息生成器和格式化程序。 請將以下參數添加到axis2.xml中。

<messageBuilder contentType=".*" class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
<messageFormatter contentType=".*" class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>

謝謝。 善潔娃

我在wso2 esb中有類似的問題。 似乎該響應僅適用於短的xml文件,但不適用於較大的xml文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM