簡體   English   中英

如何從C#調用Grails Web服務

[英]How to Call grails webservice from C#

我有一個grails網絡服務,它需要一個二進制文件作為參數。 基本上是這樣的:

def index = {
    switch(request.method){
    case "POST":
    def uploadedFile = request.getFile('file')
    File f=new File('c:/dev/newfile.tar');
    uploadedFile.transferTo(f);
    //do something with f
    break
    }
}

為了測試這一點,我使用了curl-像這樣:

curl -F file=@somefile.tar http://localhost:8080/MyWebS/fileWS

關鍵是,為了讓grails知道如何獲取文件,我必須在curl命令中定義那個file = thefile。

這如何使C#調用相同的Web服務並將其傳遞給文件。 該文件是什么樣的? 一個字節數組?

最簡單的方法是使用WebClient.UploadFile重載之一:

new WebClient().UploadFile("http://localhost:8080/MyWebS/fileWS",
                           "somefile.tar");

如果您需要更多的控制,可以使用HttpWebRequest

暫無
暫無

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

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