• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Co się dzieje z porównywaniem?

Object Storage Arubacloud
0 głosów
244 wizyt
pytanie zadane 12 października 2016 w JavaScript przez MatiiTv Gaduła (3,790 p.)
zamknięte 12 października 2016 przez MatiiTv

Witam, mam kod napisany w Node.JS, dość banalny.

Chodzi o to, że if cały czas zwraca false, bez żadnej widocznej dla mnie przyczyny.

var secret_get_token = decrypt(req.query['token']); //express framework
var secret_token_server = token+partner+id.toString()+sum.toString(); //inne zmienne
 if(secret_token_server == secret_get_token){ //zwraca false!

...

Wrzucałem to w logger.debug (console.log) i na oko były identyczne jak logowało się przy requeście, potem wrzuciwszy to do jakiejś porównywarki w internecie było także identycznie.

Typeof zwraca w obu przypadkach string.

Próbowałem ===, .toLowerCase().toString(), brać to w ' ', nic.

Ktoś mądry coś tu poradzi? smiley

Pozdrawiam.

komentarz zamknięcia: rozwiązane (problem: unicode 0)

1 odpowiedź

0 głosów
odpowiedź 12 października 2016 przez Szymon Lisowiec Mądrala (7,150 p.)

Hmm nwm co to za zmienne (ich wartości). Dla pewności możesz spróbować:
 

if(String(secret_token_server).trim() == String(secret_get_token).trim()){

Może jakieś białe znaki w środku stringa?

komentarz 12 października 2016 przez MatiiTv Gaduła (3,790 p.)

dalem taki kod:

var index;
for (index = 0; index < targetText.length; ++index) {
    console.log("char " + index + ": " + targetText.charCodeAt(index));
}

wyrzucilo 0 (unicodowy null) od pozycji 37-47. Jak usunąć to? 

 

string.replace(/\0/g, '')

nie działa.

komentarz 12 października 2016 przez Szymon Lisowiec Mądrala (7,150 p.)

hmmm, ogólnie tu i tu na 100% zgadza się wielkość znaków?
var secret_token_server = token+partner+id.toString()+sum.toString();
możesz wyrzucić te zbędne .toString() o ile token lub partner jest stringiem.

komentarz 12 października 2016 przez MatiiTv Gaduła (3,790 p.)
tak, zgadza się.

Tu problem whitespaców raczej
komentarz 12 października 2016 przez Szymon Lisowiec Mądrala (7,150 p.)

spróbuj

string.replace(/\s/g, '')

 

komentarz 12 października 2016 przez MatiiTv Gaduła (3,790 p.)
nic.
komentarz 12 października 2016 przez MatiiTv Gaduła (3,790 p.)
Jednak mi się udało :)

nic tu po mnie, zamykam.

Podobne pytania

0 głosów
1 odpowiedź 141 wizyt
pytanie zadane 25 lutego 2016 w OpenGL, Unity przez xydden Gaduła (4,480 p.)
0 głosów
1 odpowiedź 158 wizyt
pytanie zadane 24 lipca 2017 w Systemy CMS przez Paweł123 Nałogowiec (33,500 p.)

92,575 zapytań

141,424 odpowiedzi

319,649 komentarzy

61,960 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...