Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Portuguese
  4. Http POST, selecionar página
Forum Updated to NodeBB v4.3 + New Features

Http POST, selecionar página

Scheduled Pinned Locked Moved Portuguese
3 Posts 2 Posters 1.9k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    shoxsz
    wrote on last edited by
    #1

    Olá pessoal, estou tentando me autenticar em um servidor online, mas não consigo selecionar a página a qual quero me conectar, o erro retornado diz que o protocolo é desconhecido...:

    Primeiro a requisição GET
    @
    QObject::connect(&access, SIGNAL(finished(QNetworkReply*)), &loop_get, SLOT(quit()));

    url_str = QString("http://") + info + QString(".server.com");
    server_url = QString("t") + info + QString("-") + info + QString(".server.com");
    
    request.setUrl(QUrl(url_str));
    
    reply = access.get(request);
    loop_get.exec();
    
    if(reply->error() != QNetworkReply::NoError)
    {
        throw std::runtime_error(reply->errorString().toStdString());
    }
    
    delete reply;
    

    @

    e agora a requisição POST:
    @
    QObject::connect(&access, SIGNAL(finished(QNetworkReply*)), &loop_post, SLOT(quit()));

    url_str = "/pagina_que_quero?parametros=5&t=3";
    
    //Montar corpo da msg
    msg_body = QString("message");
    
    //Montar cabeçalho HTTP
    request.setUrl(QUrl(url_str));
    request.setHeader(QNetworkRequest::ServerHeader, server_url);
    request.setHeader(QNetworkRequest::ContentTypeHeader, "application/x-www-form-urlenconded");
    request.setHeader(QNetworkRequest::ContentLengthHeader, QString::number(message.size()));
    
    reply = access.post(request, QByteArray(message.toStdString().c_str()));
    
    loop_post.exec();
    
    if(reply->error() == QNetworkReply::NoError)
    {
        qDebug() <<"that's ok:\n"<<reply->readAll();
    }
    else
    {
        qDebug() <<"That's not ok:\n"<<reply->errorString();
    }
    
    delete reply;
    

    @

    o erro retornado é:

    @That's not ok:
    "Protocol "" is unknown" @

    Não sei como informar a página desejada ao servidor, no google não se encontra nada sobre isso, apenas exemplos simples. Se alguém puder ajudar eu agradeço.
    :)

    1 Reply Last reply
    0
    • R Offline
      R Offline
      Rodrigocg
      wrote on last edited by
      #2

      Não tenho como falar o que esta acontecendo se vc nao mostrar o site que vc quer fazer login, mas vc pode dar uma olhada nesse exemplo que eu fiz "clicando aqui":http://www.4shared.com/zip/aUWk2stNba/testeSimulador.html

      A parte da conexão começa no construtor da classe mainwindow e ele faz conexão no site da folha investe.

      eu removi minha senha, mas se quiser testar, cria um login em "folha investe":http://folhainvest.folha.com.br/

      O compilador que eu utilizei foi o mingw e a versão do Qt foi a 5.

      1 Reply Last reply
      0
      • S Offline
        S Offline
        shoxsz
        wrote on last edited by
        #3

        O erro já foi solucionado, estou fazendo assim: o login será ativado pelo click de um botão, então eu leio as informações de login e tento me autenticar no servidor, para montar o corpo do pedido eu utilizei um sniffer para ver como a autenticação é feita: o site não criptografa os dados e as informações de login vão no corpo da mensagem: indicando o servidor, o mundo ao qual desejo me logar, o usuário e o password, mas isso eu já fiz, o problema é que ele retorna uma página de erro, mesmo o login estando correto, agradeço pelo seu código, eu vou baixá-lo e ver como você fez.

        O site ao qual tento me autenticar é o ikariam: br.ikaiam.gameforge.com

        1 Reply Last reply
        0

        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups
        • Search
        • Get Qt Extensions
        • Unsolved