Witam czy orięntuję się ktoś jak pobrać dane firmy z GUS za pomocą nr NIP ?? Czytałem ich instrukcję do tego natomiast przykłady są z innych języków w których nie za bardzo się orięntuję.
Dostałeś od nich klucz? Bo jeżeli nie to https://wyszukiwarkaregon.stat.gov.pl/appBIR/index.aspx i sam tworzysz requesty
- Rejestracja:ponad 9 lat
- Ostatnio:prawie 6 lat
- Postów:31
Na razie działam na testowym kluczu który jest w instrukcji.
- Rejestracja:ponad 9 lat
- Ostatnio:prawie 6 lat
- Postów:31
Mi bardziej chodzi jak w mojej aplikacji przez adres NIP jestem w stanie pobrać dane aby automatycznie uzupełniały się dane takie jak: Nazwa,Adres...
- Rejestracja:ponad 9 lat
- Ostatnio:prawie 6 lat
- Postów:31
Ale robicie wsimport i działacie na generowanych klasach czy bardziej sami tworzycie zapytanie SOAP czy zapytania REST ??
- Rejestracja:ponad 9 lat
- Ostatnio:prawie 6 lat
- Postów:31
Dobra już sobie poradziłem wykonuje zapytanie:
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost postRequest = new HttpPost("https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc");
StringEntity input = new StringEntity("<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\" xmlns:ns=\"http://CIS/BIR/PUBL/2014/07\">"
+ "<soap:Header xmlns:wsa=\"http://www.w3.org/2005/08/addressing\">"
+ "<wsa:Action>http://CIS/BIR/PUBL/2014/07/IUslugaBIRzewnPubl/Zaloguj</wsa:Action>"
+ "<wsa:To>https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc</wsa:To>"
+ "</soap:Header>"
+ "<soap:Body>"
+ "<ns:Zaloguj>"
+ "<ns:pKluczUzytkownika>Klucz użytkownika</ns:pKluczUzytkownika>"
+ "</ns:Zaloguj>"
+ "</soap:Body>"
+ "</soap:Envelope>");
input.setContentType("application/soap+xml");
postRequest.setEntity(input);
HttpResponse response = httpClient.execute(postRequest);
Można skorzystać z już gotowych rozwiązań: https://nip24.pl/pobierz/
Rozwiązanie bezpłatne jeśli zrobić mniej niż 100 zapytań na miesiąc.
Używam metody kolegi:
public HttpResponse serviceConnection() {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost postRequest = new HttpPost("https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc");
StringEntity input = null;
HttpResponse response = null;
try {
input = new StringEntity("<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" "
+ "xmlns:ns="http://CIS/BIR/PUBL/2014/07">"
+ "<soap:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">"
+ "wsa:Actionhttp://CIS/BIR/PUBL/2014/07/IUslugaBIRzewnPubl/Zaloguj</wsa:Action>"
+ "wsa:Tohttps://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc</wsa:To>"
+ "</soap:Header>"
+ "soap:Body"
+ "ns:Zaloguj"
+ "ns:pKluczUzytkownika"
+ Play.application().configuration().getString("gus.apiKey")
+ "</ns:pKluczUzytkownika>"
+ "</ns:Zaloguj>"
+ "</soap:Body>"
+ "</soap:Envelope>");
input.setContentType("application/soap+xml");
postRequest.setEntity(input);
response = httpClient.execute(postRequest);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return response;
}
I okazuje się, że metoda getFullReport nie zwraca żadnych danych.
public HttpResponse getFullReport(String vatNumber){
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost postRequest = new HttpPost("https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc");
StringEntity input = null;
HttpResponse response = null;
try {
input = new StringEntity(
"<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:ns="http://CIS/BIR/PUBL/2014/07"> " +
"<soap:Header xmlns:wsa="http://www.w3.org/2005/08/addressing"> " +
"wsa:Tohttps://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc</wsa:To> " +
"wsa:Actionhttp://CIS/BIR/PUBL/2014/07/IUslugaBIRzewnPubl/DanePobierzPelnyRaport</wsa:Action> " +
"</soap:Header> " +
"soap:Body " +
"ns:DanePobierzPelnyRaport " +
"ns:pRegon000331501</ns:pRegon> " +
"ns:pNazwaRaportuPublDaneRaportPrawna</ns:pNazwaRaportu> " +
"</ns:DanePobierzPelnyRaport> " +
"</soap:Body> " +
"</soap:Envelope>"
);
input.setContentType("application/soap+xml");
postRequest.setEntity(input);
response = httpClient.execute(postRequest);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return response;
}
Czy potrzebuję jakiejś sesji użytkownika? Jeśli tak, to jak ona się nazywa?