Facebookの壁紙(タイムライン)に投稿できる短いアプリを作りたいと思っています。 私のアプリは公開ストリームのアクセストークンを取得するためにwebviewコンポーネント(QWebView)に基づいていますQt SymbianからのFacebookウォール(タイムライン)の投稿4.7
私はアクセストークンを取ることができますが、何かを投稿しようとするとFacebookに何も表示されません。
void MainWindow::on_pushButton_clicked(){
QUrl url("https://www.facebook.com/dialog/oauth");
url.addQueryItem("client_id","my_app_id");
url.addQueryItem("redirect_uri","https://www.facebook.com/connect/login_success.html");
url.addQueryItem("response_type","token");
url.addQueryItem("scope","read_stream,publish_stream");
MainWindow::browser->load(url);
MainWindow::browser->show();
}
void MainWindow::on_browser1_loadFinished(bool arg1)
{
QUrl url= browser->url();
QString strUrl = url.toString();
qDebug()<<"URL: "<<strUrl;
if(strUrl.contains(QString("access_token="), Qt::CaseSensitive)){
int sIndex = strUrl.indexOf("access_token=");
int eIndex = strUrl.indexOf("&expires_in");
QString mAccessToken= strUrl.mid(sIndex, eIndex - sIndex);
mAccessToken = mAccessToken.remove("access_token=");
qDebug()<<"TOKEN: + "<<mAccessToken;
QUrl params;
params.addQueryItem("access_token",mAccessToken);
params.addQueryItem("message","TEST !!");
params.addQueryItem("link","https://young-day-9284.herokuapp.com/");
params.addQueryItem("description","Testing");
params.addQueryItem("name","Test ");
params.addQueryItem("caption","Testing");
qDebug()<<"Mesajul trimis: "<<QString(params.encodedQuery());
QNetworkAccessManager mNetManager(this);
QNetworkRequest request(QUrl("https://graph.facebook.com/me/feed"));
//request.setHeader(QNetworkRequest::ContentTypeHeader,"application/x-www-form-urlencoded");
mNetManager.post(request,params.toString(QUrl::None).toAscii());
}
}
動作しません。私はjavaで同じシナリオを作っています。私はHTTPプロキシ(私はプロキシサーバーの背後にある)にアプリプロキシを設定します。私は公共のIPと同じ結果でプロキシサーバーの外で試しました.... – dnp
正確に何がうまくいかなかったのですか?アプリケーションはインターネットに接続することはできますか? – ahf
はい私はHTTP要求をすることができますが、https(この場合)を作ろうとしたときには動作しません。私は自分のプロジェクトLIBS + = -llibcryptoをopen ssl libにリンクしていますが、同じ結果が... HttpsリクエストはWebブラウザで正常に動作します。私はそこに問題があると思うプロキシサーバーとhttps – dnp