2012-08-29 65 views
3

我有一個REST服務,它通過HTTP GET返回文件。獲取soapUI以在附件中顯示附件的響應

我在響應(在服務器上)設置這些標題和下載在任何瀏覽器完美的作品:
Content-Length
Content-Type
Content-Disposition


然而,在soapUI的它簡單地打印二進制輸出到響應窗口,我倒是喜歡將文件放入底部的「附件」選項卡中。

我試過multipart /混合無濟於事。

任何人都知道我應該如何讓服務器形成響應,以便soapUI將文件放在附件標籤中?

謝謝!

回答

0

我不知道如何把文件放在附件標籤中,但我知道你可以通過groovy轉換文件中的二進制輸出。

您可以試試這個腳本,只需填寫三個變量擴展名,即textBase64即可。

import org.apache.commons.codec.binary.Base64 
def extension = (##extension of your file##) 
def name = (##name of your file ##) 
def textBase64 =(##binary output from your request##) 


// Access element Base64-encoded text content 
String tempFilename = "${name}.${extension}" 
def b64 = new Base64() 
def TextBytes = b64.decode(textBase64.getBytes()) 

// Output text into a temporary file 
def File = new java.io.File(tempFilename) 
FileOutputStream fos = new java.io.FileOutputStream(File) 
fos.write(TextBytes) 
fos.flush() 
fos.close() 
log.info "File stored as: ${File.getCanonicalPath()}" 

更好的劇本可能存在,但對我來說

這一個運作良好