Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> powtarzanie requesta do poki otrzymamy odpowiedz
dvdx95
post 13.11.2016, 00:02:01
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 3
Dołączył: 11.10.2016

Ostrzeżenie: (0%)
-----


siem prosil bym o pomoc nie wiem czy taki kod jest dobrze napisany

mianowicie
do request uzywam node request
  1.  
  2. //api request
  3. function(err, response){
  4. if(err) {
  5. return(err);
  6. }
  7. //a tutaj kod gdy !err
  8. }
  9.  


nie jestem pewien czy taki kod bedzie powtarzal zapytanie dopóki otrzyma response?? prosil bym o odpowiedz

Ten post edytował dvdx95 13.11.2016, 00:03:50
Go to the top of the page
+Quote Post
SmokAnalog
post 13.11.2016, 00:28:06
Post #2





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Błąd to też odpowiedź, więc nic się nie będzie samo powtarzało przy błędzie. Musisz sam zrobić taką pętlę, jeśli chcesz wysyłać requesty do skutku (braku błędu).
Go to the top of the page
+Quote Post
dvdx95
post 13.11.2016, 01:39:54
Post #3





Grupa: Zarejestrowani
Postów: 47
Pomógł: 3
Dołączył: 11.10.2016

Ostrzeżenie: (0%)
-----


  1.  
  2.  
  3. function retry(){
  4.  
  5. //api request
  6. function(err, response){
  7. if(err) {
  8. setTimeout(retry,500);
  9. return(err);
  10. }
  11. //a tutaj kod gdy !err
  12. }
  13.  
  14. }


jak myslisz takie cos zda egzamin?

albo takie questionmark.gif

  1.  
  2.  
  3. function retry(){
  4.  
  5. //api request
  6. function(err, response){
  7. if(err) {
  8. retry();
  9.  
  10. }
  11. //a tutaj kod gdy !err
  12. }
  13.  
  14. }
  15.  
Go to the top of the page
+Quote Post
SmokAnalog
post 13.11.2016, 01:45:51
Post #4





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Zerknij sobie na ten temat: http://stackoverflow.com/questions/1002446...re-using-jquery
Go to the top of the page
+Quote Post
dvdx95
post 13.11.2016, 01:50:53
Post #5





Grupa: Zarejestrowani
Postów: 47
Pomógł: 3
Dołączył: 11.10.2016

Ostrzeżenie: (0%)
-----


tak wiem tylko tam jest ajax , ja nie chce ajaxa dlatego ze ten plik nie jest dla komunikacji na stronie www tylko jest to plik odpalany przez node.js
Go to the top of the page
+Quote Post
SmokAnalog
post 13.11.2016, 01:57:25
Post #6





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Ale zasada jest podobna. Musisz w jakiś sposób odpalić swoją funkcję zarówno na początku, jak i w przypadku błędu. Jesteś na dobrej drodze, kombinuj.
Go to the top of the page
+Quote Post
dvdx95
post 13.11.2016, 02:02:16
Post #7





Grupa: Zarejestrowani
Postów: 47
Pomógł: 3
Dołączył: 11.10.2016

Ostrzeżenie: (0%)
-----


moze by tak zrobic


  1. setTimeout(function retry(){
  2.  
  3. //api request
  4. function(err, response){
  5. if(err) {
  6. retry();
  7.  
  8. }
  9. //a tutaj kod gdy !err
  10. }
  11.  
  12. },100);


Ten post edytował dvdx95 13.11.2016, 02:02:30
Go to the top of the page
+Quote Post
SmokAnalog
post 13.11.2016, 02:43:24
Post #8





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


A po co setTimeout? tongue.gif
Go to the top of the page
+Quote Post
dvdx95
post 13.11.2016, 22:46:43
Post #9





Grupa: Zarejestrowani
Postów: 47
Pomógł: 3
Dołączył: 11.10.2016

Ostrzeżenie: (0%)
-----


oki powiedzmy ze jakos sie z tym uporalem , ale teraz mam kolejne pytanie

dostaje odpowiedz z api ktora powinna wygladac tak

  1. [{
  2. id: 42141231,
  3. owner: 12312321,
  4. }]

a dostaje takie cos
  1. [{
  2. //w srodku pusto :(
  3. }]


co zrobic w takim wypadku questionmark.gif

tzn chodzi mi oto jak to zrobic zeby wprzypadku dostania odpowiedzi z api (responsa) ktory jest nieprawidłowy(pusty) aby jeszcze raz wyslalo zapytanie

Ten post edytował dvdx95 13.11.2016, 22:49:36
Go to the top of the page
+Quote Post
SmokAnalog
post 13.11.2016, 22:48:47
Post #10





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Jeżeli przyszła odpowiedź bez błędu, to możesz zakładać, że kolejna odpowiedź będzie identyczna. Sprawdź czy na pewno wszystko wysłałeś jak należy.
Go to the top of the page
+Quote Post
dvdx95
post 13.11.2016, 22:51:38
Post #11





Grupa: Zarejestrowani
Postów: 47
Pomógł: 3
Dołączył: 11.10.2016

Ostrzeżenie: (0%)
-----


tzn tak te odpowiedzi przychodza w takiej formie

  1. [{
  2. id: 42141231,
  3. owner: 12312321,
  4. }]


chodzi mi jednak oto co zrobic gdyby sie tak zdazylo (a zdaza sie) ze przyjdzie taka odpowiedz

  1. [{
  2. //w srodku pusto :(
  3. }]


ktora niby przyszla ale jest pusta
Go to the top of the page
+Quote Post
SmokAnalog
post 13.11.2016, 22:55:17
Post #12





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Jesteś pewien? Co to za API, które wysyła złe odpowiedzi? Czy pobierasz jakieś nowe rzeczy i jak jest pusto to znaczy, że nic nowego nie ma?

Teoretycznie nic nie stoi na przeszkodzie, żeby po prostu zliczać elementy w tablicy z response i jeśli jest pusta, to znowu wysłać request. Zastanów się jednak czy na pewno o to chodzi.
Go to the top of the page
+Quote Post
dvdx95
post 13.11.2016, 23:01:32
Post #13





Grupa: Zarejestrowani
Postów: 47
Pomógł: 3
Dołączył: 11.10.2016

Ostrzeżenie: (0%)
-----


napisalem Ci na PW.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 15.08.2025 - 13:15