http:/ / torna-se http%3A % 2f % 2F no co-Designiter

o seguinte url de redireccionamento torna-se com http%3A%2F%2F em vez de http://. Como posso evitar isto?

Obrigado antecipadamente.

$params = array(
            'client_id' => $client_id,
            'redirect_uri' => site_url('welcome/google_connect_redirect/'), 
            'state' => $_SESSION['state'],
            'approval_prompt' => 'force',
            'scope' => 'https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email',
            'response_type' => 'code'
        );
        $url = "https://accounts.google.com/o/oauth2/auth?".http_build_query($params);
        // send to google
        redirect($url);

a URL torna-se assim.

https://accounts.google.com/o/oauth2/auth?client_id=871111192098.apps.
googleusercontent.com&redirect_uri=http%3A%2F%2Flocalhost%3A8888%2Fmyappname
%2Findex.php%2Fwelcome%2Fgoogle_connect_redirect&state=f0babsomeletterscb5b48753358c
3b9&approval_prompt=force&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2F
userinfo.profile+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&
response_type=code            
Author: shin, 2012-04-22

3 answers

Quando você colocar strings com caracteres especiais em URL, eles serão codificados, você pode usar urldecode

 3
Author: Jason, 2012-04-22 05:47:31

O texto da consulta é codificado porque existem alguns caracteres especiais que têm um significado especial numa URL.

Da Wikipédia:

Alguns caracteres não podem fazer parte de um URL (por exemplo, o espaço) e alguns outros caracteres têm um significado especial numa URL: por exemplo, o carácter # pode ser usado para especificar mais uma subsecção (ou fragmento) de um documento; o carácter = é usado para separar um nome de um valor. Um texto de pesquisa pode ter de ser convertido para satisfazer estes restricao. Isto pode ser feito usando um esquema conhecido como codificação de URL.

 1
Author: Kemal Fadillah, 2012-04-22 05:55:03

O ponto de http_build_query() é que ele urlencode() é cada um dos valores da matriz para você antes de juntá-los em um formato de querystring. Este é o comportamento preferido.

 0
Author: dtbarne, 2012-04-22 05:54:14