http://pubsubhubbub.appspot.com/subscribe 407 требуется аутентификация - PullRequest
0 голосов
/ 06 января 2012

У меня есть клиентский клиент, который подключается к https://pubsubhubbub.appspot.com/subscribe Я поставил параметр ниже

https://pubsubhubbub.appspot.com/subscribe
hub.topic    http://...../lastupby
hub.callback http://localhost:8080/Subscription/subscription/subscribe
hub.mode subscribe

Я также определяю настройки прокси, не показано ниже, но я принимаю 407 ответ на запрос аутентификации

HttpPost httppost = new HttpPost(hub);  
                    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
                    nvps.add(new BasicNameValuePair("hub.callback", callbackUrl));
                    nvps.add(new BasicNameValuePair("hub.mode", "subscribe"));
                    nvps.add(new BasicNameValuePair("hub.topic", topic_url));
                    nvps.add(new BasicNameValuePair("hub.verify", "sync"));
                    if (lease_seconds != null)
                        nvps.add(new BasicNameValuePair("hub.lease_seconds", lease_seconds));
                    //For future https implementation
                    //if ((secret !=null) && (secret.getBytes("utf8").length < 200))
                    //  nvps.add(new BasicNameValuePair("hub.hub.secret", secret));
                    if (verifytoken !=null)
                        nvps.add(new BasicNameValuePair("hub.verify_token", verifytoken));

                    webserver.addAction("subscribe",topic_url, verifytoken);

                    httppost.setEntity(new UrlEncodedFormEntity(nvps));
                    httppost.setHeader("Content-type", "application/x-www-form-urlencoded");
                    httppost.setHeader("User-agent", "RSS pubsubhubbub 0.3");

                    //create the thread and start it running
                    GetThread thread = new GetThread(httpClient, httppost);
                    thread.start();
                    thread.join();

есть кто-нибудь знает эту проблему, я все еще не решил спасибо

1 Ответ

2 голосов
/ 06 января 2012

Если ваш обратный вызов локальный, он никогда не будет работать, так как концентратор должен отправить ему запрос на подтверждение.Localhost в вашем URL-адресе обратного вызова означает, что этот URL-адрес является локальным для вашей машины разработки, поэтому недоступен из остальной части Интернета, включая концентратор:)

...