2011-12-20 3 views
0

은 내가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 

아래 매개 변수를 넣어하지만 난 문제가 무엇인지 이해할 수 없다 널 (null) 응답을 얻었다 https://pubsubhubbub.appspot.com/subscribe에 연결하는 가입자 클라이언트가 당신의 도움을 주셔서 감사

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(); 

당신이있어 무엇을 포함 할 수있다, 당신은 확인해야합니다 우선은 응답의 HTTP 상태이며, 다음, 몸 자체를 확인하면

+1

어떤 오류/예외가 표시됩니까? –

+0

System.out.println ("thread.httpresponse"+ thread.httpresponse.getStatusLine(). getReasonPhrase())와 같은 응답 코드를 가져 오려고하면 오류가 발생하지 않습니다. 그것은 null을 반환합니다. /// 우리는 프록시 뒤에서 작동합니다.이 상황이 발생 했습니까? 나는 확신하지 못합니다. –

답변

1

감사합니다 잘못하고있다.

또한 귀하의 예를 기반으로, 귀하의 콜백 URL 문제가 거의 확실합니다. 허브에 가입 요청을 보내면 허브는이 가입을 확인하기 위해 다시 확인해야합니다. 그런 다음 콜백 URL에 요청을 보냅니다 (사양의 의도 섹션 확인). 콜백이 실제로 방화벽 뒤에 있기 때문에 허브는 결코 그곳에 도달 할 수 없습니다.

+0

확인 하겠지만, 방화벽 요청은 Google 허브에서 콜백 및 가입 주제를 핑 (ping)합니까? 방화벽 가입 요청이 잘못된 이유 일 수 있습니다. –