2015-09-09 71 views
-3

我想使用c#調用一些Curl請求。我搜索並看到了一些例子,但它們不適合我。我的命令如下:在C中創建CURL請求#

捲曲例如用於登錄:

curl -X GET \ 
--digest -u "<username>:<password>" http://<IP>/api/auth/login \ 
--cookie-jar <cookieFile> 

登錄結果可以與被擷取:

curl -X GET \ 
http://<IP>/api/auth/user --cookie <cookieFile> 

在此之後,數據可以例如用被提取:

curl -X POST \ 
--data "{\"filter\" : [ { \"Name\" : \"ID\", \"Op\" : \"=\", \"Value\" : \"1\" } ], \ 
\"count\" : 1, \"offset\" : 0, \"brief\" : true, \"includeResultsetSize\" : false }" \ 
http://<IP>/api/$/database/getCrossings --cookie <cookieFile> 

如何使用c#調用這些命令?

這是我的示例代碼不起作用:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://192.168.5.204/api/auth/login"); 
    request.Method = "GET"; 
    request.Accept = "application/json"; 
    request.Credentials = new NetworkCredential("user", "pass"); 
    request.UserAgent = "curl/7.37.0"; 
    request.ContentType = "api/auth/login"; 

    using (var streamWriter = new StreamWriter(request.GetRequestStream())) 
    {} 

我的「GetRequestStream」功能得到運行時錯誤:「無法發送內容體與這個動詞型」。

+2

請參閱HttpClient,WebClient或HttpWebRequest類... – Eser

+1

爲什麼地球上被標記爲PHP? –

回答

0

我認爲問題是內容類型。

request.ContentType = "application/json";