2012-09-10 78 views
0

我有這個cUrl命令,我需要在Linux下的C++程序中執行,我正在使用Qt幷包含libcUrl,我需要知道與此cUrl命令等同的確切方法調用:cUrl命令C++代碼替換

curl -d 'grant_type=client_credentials&client_id=mdme2323&client_secret=asdaeqwedsa24124ewesiou&scope=http://api.microsofttranslator.com' https://datamarket.accesscontrol.windows.net/v2/OAuth2-13 | python -m json.tool 

回答

1

如何在新的過程中執行命令?

QString cmd("curl -d 'grant_type=client_credentials&client_id=mdme2323&client_secret=asdaeqwedsa24124ewesiou&scope=http://api.microsofttranslator.com' https://datamarket.accesscontrol.windows.net/v2/OAuth2-13 | python -m json.tool"); 
QProcess::execute(cmd); 
+0

那麼如何獲得其返回的數據? –

+0

順便說一句,在標準輸出中,我得到了這個「捲曲:選項-m:預期一個合適的數字參數 捲曲:嘗試'捲曲 - 幫助'或'捲曲 - 手動'以獲取更多信息」執行得很好。 –

+0

我覺得你需要在curl之前添加shell命令。由於管道是殼牌功能的一部分。 –

0

這是我如何固定它:

QProcess* proc = new QProcess(); 
QString cmd("/bin/sh"); 
QStringList args; 
args << "-c" << "curl -d 'grant_type=client_credentials&client_id=islam123&client_secret=23ewsed323we2ewesiou&scope=http://api.microsofttranslator.com' https://datamarket.accesscontrol.windows.net/v2/OAuth2-13"; 
proc->execute(cmd, args); 
data = proc->readAll();