Anonymní profil mario – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil mario – Programujte.comAnonymní profil mario – Programujte.com

 

Příspěvky odeslané z IP adresy 78.80.244.–

mario
JavaScript, AJAX, jQuery › curl request z PHP do node.js
13. 1. 2022   #389593

#3 mario
Omlouvám se byla to úplná blbost. Pro http stránku místo https.get musí být http.get a url.

mario
JavaScript, AJAX, jQuery › curl request z PHP do node.js
13. 1. 2022   #389592

Javascript Kód 

const https = require('https');
const { SocksProxyAgent } = require('socks-proxy-agent');

const agent = new SocksProxyAgent('socks5h://127.0.0.1:9050');

https.get('https://nqieh33bhvzhm35l4qe4ifzbrbpxk4szwlu42wonqycvmqurlzptigyd.onion/api/v1/fees/recommended', {
    agent
}, res => {
    res.pipe(process.stdout);
});

vrací 

Emitted 'error' event on ClientRequest instance at:
    at onerror (*****/torapi/node_modules/agent-base/dist/src/index.js:117:21)
    at callbackError (*****/torapi/node_modules/agent-base/dist/src/index.js:136:17)
    at processTicksAndRejections (node:internal/process/task_queues:96:5) {
  options: {
    proxy: { host: '127.0.0.1', port: 9050, type: 5 },
    destination: {
      host: 'nqieh33bhvzhm35l4qe4ifzbrbpxk4szwlu42wonqycvmqurlzptigyd.onion',
      port: 443
    },
    command: 'connect',
    timeout: undefined
  }
}

Process finished with exit code 1

pokud se url změní z https na http odpověď vypadá takto

node:_http_client:158
    throw new ERR_INVALID_PROTOCOL(protocol, expectedProtocol);
    ^

TypeError [ERR_INVALID_PROTOCOL]: Protocol "http:" not supported. Expected "https:"
    at new NodeError (node:internal/errors:371:5)
    at new ClientRequest (node:_http_client:158:11)
    at request (node:https:353:10)
    at Object.get (node:https:387:15)
    at Object.<anonymous> (*****/torapi/index.js:6:7)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12) {
  code: 'ERR_INVALID_PROTOCOL'
}

PHP kód 

<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5_HOSTNAME );
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_PROXY, '127.0.0.1:9050');
curl_setopt($curl, CURLOPT_URL, "http://nqieh33bhvzhm35l4qe4ifzbrbpxk4szwlu42wonqycvmqurlzptigyd.onion/api/v1/fees/recommended");
echo(curl_exec($curl));

vrací očekávanou odpověď API

{"fastestFee":3,"halfHourFee":3,"hourFee":3,"minimumFee":1}
mario
JavaScript, AJAX, jQuery › curl request z PHP do node.js
12. 1. 2022   #389589

Zdravím.

Potřebuju získat data z API, které komunikuje jen přes TOR. Lokálně na portu 9050, běží TOR-proxy.  V PHP je možné získat data z api za pomocí option:

CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5_HOSTNAME

Celý PHP Kód: 

<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5_HOSTNAME );
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_PROXY, '127.0.0.1:9050');
curl_setopt($curl, CURLOPT_URL, "http://neco.onion");
echo(curl_exec($curl));

V node.js je pak možné použít TOR proxy, ale jen pro stránky s normální doménou(ne .onion) 

const https = require('https');
const { SocksProxyAgent } = require('socks-proxy-agent');

const agent = new SocksProxyAgent('socks5h://127.0.0.1:9050');

https.get('https://ifconfig.me', {
  agent
}, res => {
  res.pipe(process.stdout);
});

Je možné nastavit něco jako "CURLOPT_PROXYTYPE = CURLPROXY_SOCKS5_HOSTNAME" v node.js. Předem moc děkuji.

Sítě › synchronizace uzlů v nodejs
23. 4. 2021   #387848

#2 MilanL
Díky moc. Našel jsem tento https://developer.bitcoin.org/devguide/p2p_network.html , který popisuje vše co potřebuji.

PHP › univerzální desktopová aplik…
2. 4. 2021   #387715

Zdravím. Pomocí pywebview jsem v pythonu vytvořil desktopovou aplikaci s PHP. Problém je, že na počítačích kde není nainstalované PHP se server nespustí. Je tady nějaká možnost jak připojit PHP k aplikaci tak, aby jela aplikace na všech počítačích? Díky za pomoc.

import os
import webview

webview.create_window('moje aplikace', 'http://localhost:8000')

os.system('php -S localhost:8000')

webview.start()

index.php je ve stejné složce.

PHP › Získání dat z api
3. 3. 2021   #387599

Dobrý večer. Znovu píšu o radu týkající se stejného API. Problém je, že potřebuju z api dostat číslo faktury, jenomže to jde vždy udělat jen u jedné konkrétní objednávky. Potřebuji dostat číslo faktury posledních sta objednávek.  Byla by tady nějaká možnost jak to udělat aniž bych musel posílat 100 requestů? Předem Děkuji za odpověď.

Dokumentace: https://webareal.docs.apiary.io/#reference/0/property-values-collection/get-order-info?console=1

PHP › API vrací {"message":"Unknow…
2. 3. 2021   #387586

Problém bude podle mě zase v hlavičce "Authorization", protože když za slovo Bearer ten token přímo napíšu tak to funguje, ale když tam dám proměnnou vyhodí to chybu.(Proměnná tam být musí, protože se ten auth token mění.)

PHP › API vrací {"message":"Unknow…
2. 3. 2021   #387585

#3 Kit, gna
Zapomněl jsem napsat, že první request funguje správně. Problém je až u druhého. 

Hardware › Triple monitor setup
2. 3. 2021   #387582

#1 Papal

zdravím. Myslím, že nejlepší si bude trochu připlatit a koupit 3x tento: 

https://www.alza.cz/24-samsung-c24rg50-d5597534.htm

PHP › API vrací {"message":"Unknow…
2. 3. 2021   #387581

Zdravím. Nemám s PHP žádnou zkušenost. Potřebuji dostat data z api platformy pro tvorbu eshopu. Napsal jsem kód v javascriptu a pak jsem zjistil, že jejich api nepodporuje CORS(Cross-origin-resource-sharing), takže má nejlepší možnost je použít PHP. Tenhle kód jsem dal dohromady díky jejich dokumentaci, ale vždy mi vyhodí{"message":"Unknown JSON error: 5"} našel by se tady někdo, kdo by mi pomohl. Předem děkuji. 

<html>
    <?php
    $x;
$url = "https://api.webareal.cz/login";

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$headers = array(
   "X-Wa-api-token: token",
   "Content-Type: application/json",
);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

$data = <<<DATA
{
  "username": "jmeno",
  "password": "heslo"
}
DATA;

curl_setopt($curl, CURLOPT_POSTFIELDS, $data);



$resp = curl_exec($curl);
curl_close($curl);
var_dump($resp);

$token = $resp;


$url = "https://api.webareal.cz/orders";

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$headers = array(
   "X-Wa-api-token: token",
   "Authorization: Bearer $token",
);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

$resp = curl_exec($curl);
curl_close($curl);
var_dump($resp);

$x = $resp;




?>
<script>
let a = <?php Print($x); ?>;
console.log(JSON.stringify(a))

</script>
</html>
PHP › iframe-Obsah sa nedá zobrazi…
2. 3. 2021   #387580

#1 Johny26
Můžeš zkusit použít jejich API, ale první je musíš kontaktovat aby jsi dostal klíč. Když vybereš jen určité údaje(jméno, cena, kontakt) z API, tak výsledná stránka bude daleko přehlednější, než za použití iframe.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032022 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý