2011-04-19 11 views
10

RESTeasy tabanlı bir REST web hizmetim var (aşağıya bakın). Hizmetimi sınamak için bir istek yürütmek üzere google REST istemcisini kullanmaya çalışıyorum, ancak isteğin nasıl ayarlanacağı konusunda emin değilim.Çok parçalı/form verisini aramak için REST istemcisini kullanın Geriye kalan web hizmeti

byte[] param (filedata) olarak nasıl gönderileceğinden emin değilim.
Bunu nasıl test edeceğiniz konusunda herhangi bir fikir var mı?

java.io.IOException:

@POST 
@Path("/upload") 
@Consumes("multipart/form-data") 
public Response create(@MultipartForm FileUploadForm form) { 
    System.out.println("form=" + form.getTest()); 
    return null; 
} 
:

request: 
-content-type=multipart/form-data 
-form params: 
test=testvalue 

istirahat yöntemi ile çok parçalı

sınırını alınamadı

aşağıdaki özel durum alıyorum

FileUploadForm Pojo:

import javax.ws.rs.FormParam; 
import org.jboss.resteasy.annotations.providers.multipart.PartType; 

public class FileUploadForm { 
    private byte[] filedata; 
    private String test; 

    public FileUploadForm() {} 

    public byte[] getFileData() { 
     return filedata; 
    } 

    @FormParam("filedata") 
    @PartType("application/octet-stream") 
    public void setFileData(final byte[] filedata) { 
     this.filedata = filedata; 
    } 

    public String getTest() { 
     return test; 
    } 

    @FormParam("test") 
    @PartType("application/json") 
    public void setTest(String test) { 
     this.test = test; 
    } 
} 

cevap

11

Sen isteğinize bu başlığı eklemek gerekir:

Accept-Encoding:multipart/form-data 

genellikle böyle İçerik türü kullanmak:

Content-Type: image/png 

Sen Postman REST client

ile test edebilirsiniz

Formun nasıl doldurulması gerektiğine ilişkin bir resim ekledim .

postman multipart/form-data

+0

thank you dude :) – vacetahanna