ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ, ΡΡΠΎ js-ipfs-api
β ΡΡΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠ°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΡΠΎΡ ΠΆΠ΅ API js-ipfs
, Π½ΠΎ ΡΡΠΎ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ.
Π Π΄ΡΡΠ³ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΡΡΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ SDK
ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡ.
ΠΠ°Π±Π°Π²Π½ΡΠΉ ΠΈΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°ΠΊΡ: Ρ Π½Π°Ρ Π±ΡΠ»ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ±ΠΈΡΡΡ
Ρ ΡΠΎΠ»ΠΊΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΎΡΠΊΡΡΠ²Π°ΡΡΠΈΡ
Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΠΎΠΏΡΠΎΡΠΎΠ², ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΡΡΠΎ js-ipfs-api
β ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ JS. ΠΡΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΏΠΎΠΌΠ΅ΡΡΠΈΠ»ΠΈ Π³ΠΈΠ³Π°Π½ΡΡΠΊΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π±Π°Π½Π½Π΅ΡΠ° Π² ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΡΠ΅ΠΏΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ -> https://github.com/ipfs/js-ipfs-api/# --
Go ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ Π·Π°ΠΊΠΎΠ½ΡΠΈΠΌ CoreAPI ΠΈ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ΅ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ... (ΠΈΠ½Π°ΡΠ΅ ΠΌΡ ΡΠ»ΠΎΠΌΠ°Π΅ΠΌ ΠΈΠΌΠΏΠΎΡΡ).
ΠΠ°Π·Π²Π°Π² Π΅Π³ΠΎ -client
, ΠΎΠ½ Π·Π²ΡΡΠΈΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ IPFS (ΡΡΠΎ-ΡΠΎ, ΡΡΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ Π±ΠΈΡΠΎΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅/ΠΈ Ρ. Π΄., Π½ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π½ΠΈΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ). ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ Ρ Π½Π΅Π³ΠΎ Π±ΡΠ»ΠΎ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ, Ρ Π±Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ» -api-client
, Ρ
ΠΎΡΡ ΠΎΠ½ΠΎ ΠΈ Π΄Π»ΠΈΠ½Π½Π΅Π΅.
Π₯ΠΌ. ΠΠ°, Ρ ΡΠ΅Π±Ρ Π΅ΡΡΡ Ρ ΠΎΡΠΎΡΠ°Ρ ΠΌΡΡΠ»Ρ.
ΠΠ½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΡΠ°Π·ΡΠΌΠ½ΡΠΌ.
ΠΡΠ»ΠΈ ΠΌΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌ -api-client, Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ -http-client ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠΌ.
ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΡΠ΅ ΡΡΠΎΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ³Π»Π°ΡΠ½Ρ Ρ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ *-ipfs-api
Π² *-ipfs-http-client
Π― Π·Π° ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ! Π― ΠΌΠΎΠ³ Π±Ρ ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΡΠ°ΡΠΎΠ΅ ΠΈΠΌΡ Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ, ΡΡΠΎΠ±Ρ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΠ»ΠΎΠΌΠ°ΡΡ.
ΠΠ°ΠΆΠ΅ΡΡΡ, ΠΌΡ Π½Π°Π±ΡΠ°Π»ΠΈΡΡ ΠΊΠ²ΠΎΡΡΠΌΠ° :) Π’Π΅ΠΏΠ΅ΡΡ ΠΎΡΡΠ°Π»ΠΎΡΡ ΠΈΡ Π²Π΅Π·Π΄Π΅ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ :)
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° PHP ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΡΠΎΠΊΠ΅ΡΠΎΠΌ... ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ Π½Π° π―%
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π² Π±Π»ΠΎΠ³Π΅ @alanshaw https://blog.ipfs.io/58-http-client-rename/ \o/
ΠΏΠΎΡΠ΅ΠΌΡ Π±Ρ Π½Π΅ ΠΏΡΠΎΡΡΠΎ Β«ipfs-api-clientΒ»? ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ° Π΅Π³ΠΎ ΠΊ http ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ ΠΊΠ°ΠΆΠ΅ΡΡΡ... ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠΉ
@whyrusleeping Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ http, ΡΡΠΎ ΠΌΠ΅Π½Ρ ΡΠ΄ΠΈΠ²ΠΈΠ»ΠΎ, ΠΊΠΎΠ³Π΄Π° Ρ Π²ΠΏΠ΅ΡΠ²ΡΠ΅ Π½Π°ΡΠ°Π» ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ IPFS. Π― ΡΠ°Π΄, ΡΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΡΡΠ°Π»ΠΎ ΡΡΠ½ΠΎ, ΡΡΠΎ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» HTTP.
ΠΠ°ΠΆΠ΅ΡΡΡ, Ρ ΠΌΠ΅Π½Ρ Π½Π΅Ρ ΠΏΡΠ°Π² Π½Π° ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅, https://github.com/ipfs/java-ipfs-api
ΠΠΎΠΆΠ΅Ρ Π»ΠΈ ΠΊΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΈΡ
ΠΌΠ½Π΅?
@ianopolous ΡΠ΄Π΅Π»Π°Π» ΡΠ΅Π±Ρ Π°Π΄ΠΌΠΈΠ½ΠΎΠΌ :)
ΠΠ²Π° ΡΠ΅Π½ΡΠ° ΠΎΡ ΠΊΠΎΠ³ΠΎ-ΡΠΎ ΠΈΠ· Π΄Π°Π»Π΅ΠΊΠΎΠΉ-Π΄Π°Π»Π΅ΠΊΠΎΠΉ Π³Π°Π»Π°ΠΊΡΠΈΠΊΠΈ (Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ, libp2p)...
ipfs-api-client
Π΄Π»Ρ ΠΌΠ΅Π½Ρ ΠΈΠ·Π±ΡΡΠΎΡΠ΅Π½, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ: ΠΊΠ°ΠΊ Π΅ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΌΠΎΠ³ Π±Ρ ΠΎΠ±ΡΠ°ΡΡΡΡ ΡΠΎ ΡΠ»ΡΠΆΠ±ΠΎΠΉ, Π΅ΡΠ»ΠΈ Π½Π΅ ΡΠ΅ΡΠ΅Π· API (ΠΊΠ°ΠΊΠΎΠ² Π±Ρ Π½ΠΈ Π±ΡΠ» ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΈ ΡΠΎΡΠΌΠ°Ρ ΠΏΡΠΎΠ²ΠΎΠ΄Π°)? Π ΠΠΠΠΠ’ΠΠ ΠΠΠΠ’Π¬: ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΠΉΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ @alexander255 Π²ΡΡΠ΅, ΠΈ ΡΡΠΎ ΡΠΎΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ». -api-client
Π΄Π°Π΅Ρ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΡΡΠΎ SDK, Π° Π½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° (http) Π² ΠΈΠΌΡ Π½Π΅Π΄Π°Π»ΡΠ½ΠΎΠ²ΠΈΠ΄Π½ΠΎ IMO:
ipfs-api-[ipc/http/grpc]-client
Π±ΡΠ΄ΡΡ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΊΠΎΠ΄Π°.ipfs-client
ΠΊΠ°ΠΆΠ΅ΡΡΡ ΠΌΠ½Π΅ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡΠΈΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄ΠΈΠ·Π°ΠΉΠ½, ΠΏΠΎΡ
ΠΎΠΆΠΈΠΉ Π½Π° Π°Π΄Π°ΠΏΡΠ΅Ρ, Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ° ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ
ΡΠ°ΡΡΠ΅ΠΉ HTTP, IPC, gRPC ΠΏΡΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°.
ΠΠ· ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΌΠ½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ ΡΡΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ, Π½ΠΎ ipfs-client
ΡΠΈΡΠ°Π΅ΡΡΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅/ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ. ΠΡΠ»ΠΈ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ Π²ΡΠ΅Π³Π΄Π° Π² Π²ΠΈΠ΄Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΠΊΠ°ΠΊ Π½Π°ΡΡΠ΅Ρ ipfs-client-library
ΠΈΠ»ΠΈ ipfs-client-lib
?
@raulk ΠΠ»Ρ ΠΌΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ ipfs-client
Π·Π²ΡΡΠΈΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ipfs. Π§ΡΠΎ Π²Π²ΠΎΠ΄ΠΈΡ Π² Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠ΅.
ΠΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ http
Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΡΠ΅Π½Ρ Π½Π΅Π΄Π°Π»ΡΠ½ΠΎΠ²ΠΈΠ΄Π½ΠΎ. ΠΡΠ»ΠΎ Π±Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ, Π΅ΡΠ»ΠΈ Π±Ρ Π΄Π°Π»Π΅ΠΊΠΎ ΠΈΠ΄ΡΡΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΡΡΠΎΠΌΡ, ΠΎΠ±ΡΡΠΆΠ΄Π°Π»ΠΈΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΈΡ
ΡΠ°ΠΊ ΡΠΈΡΠΎΠΊΠΎ.
@whyrusleeping ΠΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, Π΄Π»Ρ http-ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Java ΡΡΠΎ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ http-ΠΊΠ»ΠΈΠ΅Π½Ρ. ΠΡΠ»ΠΈ Π΅ΡΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ», Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°ΡΡΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ, ΡΠΎ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎ-Π΄ΡΡΠ³ΠΎΠΌΡ Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° go, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΆΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ http Ρ Π²ΡΠ·ΠΎΠ²Π°ΠΌΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΡΠΎΠΊΠΈ cmd.
@ianopolous Π― ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ java API ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΡΠ΅ΡΠ΅Π· Π²Π΅Π±-ΡΠΎΠΊΠ΅ΡΡ, ΠΈ Π·Π°ΡΡΠ°Π²ΠΈΡΡ Π΅Π³ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΎΠΊΠ΅Ρ Π΄ΠΎΠΌΠ΅Π½Π° unix ΡΠΎΠΆΠ΅ Π½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π½Π°Π΄ΡΠΌΠ°Π½Π½ΡΠΌ. ΠΠ΅ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ Π²Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ΅ ΡΡΠΎ Π² ΡΠ°Π·Π½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ ?
@whyrusleeping Π― Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π²ΠΈΠ΄Π΅Π» java sdk Π΄Π»Ρ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΡΠ»ΡΠΆΠ±Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅ΠΉ Π²Π΅Π±-ΡΠΎΠΊΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π±Ρ ΠΌΠ½Π΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΡΠΎ-ΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅, Ρ Π±Ρ ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» ΠΎΠ±ΡΡΠ½ΡΠΉ ΡΠΎΠΊΠ΅Ρ. ΠΡΠ»ΠΈ Π±Ρ ΡΡΠΎ Π±ΡΠ»ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ipfs, ΠΈ Π±ΡΠ»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Ρ http-ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ, ΡΠΎ Π»ΠΈΡΠ½ΠΎ Ρ Π±Ρ Π²ΡΠ΄Π΅Π»ΠΈΠ» ΠΎΠ±ΡΠΈΠΉ ΠΊΠΎΠ΄ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ (ΠΈ Π² ΠΈΠ΄Π΅Π°Π»Π΅ ΡΠ΄Π΅Π»Π°Π» Π±Ρ Π΅Π΅ Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ ΠΎΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°).
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΠ΅ Π΄Π²ΡΡ ΡΠ°Π·Π½ΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΏΡΡΠ°Π½ΠΈΡΠ΅ ΠΈ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ: https://github.com/ipfs/go-ipfs/issues/5784 .
@ianopolous ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΊΠ° ΠΎΡΠ»ΠΎΠΆΠΈΠΌ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π²Π΅Π±-ΡΠΎΠΊΠ΅ΡΠΎΠ² ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠ΅ SDK, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² (ΠΊΠ°ΠΊΠΈΠΌΠΈ Π±Ρ ΠΎΠ½ΠΈ Π½ΠΈ Π±ΡΠ»ΠΈ).
Π§ΡΠΎΠ±Ρ ΡΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎ Π½Π° Java, Ρ Π²Π°Ρ ΠΎΠ±ΡΡΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ core
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΊΠ΅Π»Π΅Ρ, ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ API, Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΈ, DTO ΠΈ Ρ. Π΄. Π Π·Π°ΡΠ΅ΠΌ Ρ Π²Π°Ρ Π±ΡΠ΄Π΅Ρ Π»ΡΠ±ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ
Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ Π±ΡΠΊΡΠ½Π΄Π°. ΠΏΡΠΎΡΠΎΠΊΠΎΠ». ΠΡΠ΅ ΠΎΠ½ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π°Π΄Π°ΠΏΡΠ΅ΡΠ° ΠΈΠ· core
.
ΠΠ±ΡΡΠ½ΠΎ Π²Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΠ΅ ΠΈΡ
Π² ΡΠ±ΠΎΡΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ <scope>runtime</scope>
(Maven), Π° core
ΠΌΠΎΠ³ΡΡ Π΄Π°ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌ, ΠΊΠ°ΠΊ SPI (ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΡΡΠ»ΡΠ³), ΡΡΠΎΠ±Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ Π°Π΄Π°ΠΏΡΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ (Π΄Π°ΠΆΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π·Π°ΠΏΠ°ΡΠ½ΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΠ»ΠΈ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΈΠ΅). ΠΠ»ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΊΠ°ΠΆΠ΅Ρ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π½ΠΈΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ
ipfsClient.setBackend(HttpApiBackend.class); // public void setBackend(Class<? extends IpfsBackend> clz);
ΠΡΡΠ°ΡΠΈ, web3j ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ HTTP, IPC ΠΈ WSS Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈ ΡΠΎΠΌ ΠΆΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ Java, ΠΈ, ΠΏΠΎΠΊΠ° API Ρ ΠΎΡΠΎΡΠΎ ΡΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½, Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π±ΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ, β ΡΡΠΎ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ.
@raulk
ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠ΅ SDK, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² (ΠΊΠ°ΠΊΠΈΠΌΠΈ Π±Ρ ΠΎΠ½ΠΈ Π½ΠΈ Π±ΡΠ»ΠΈ).
Π― ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ Π½Π΅ Ρ ΠΎΡΡ ΡΡΠΎΠ³ΠΎ. ΠΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ² Π² ΠΎΠ΄Π½Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠ². ΠΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΊΠ°ΠΊ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ, ΡΠ°ΠΊ ΠΈ Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅ O(N), Π³Π΄Π΅ N β ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ². ΠΠΎΡΡΠΈ Π²ΡΠ΅ Π²ΡΠ΅ΠΌΡ ΠΌΠ½Π΅ Π½ΡΠΆΠ½Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° SDK, ΠΈ Ρ Π±Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠ΅Π» Π½Π΅ ΠΈΠΌΠ΅ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ, 90% ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠ½Π΅ ΡΡΠΆΠ΄Ρ, ΡΠ°Π·Π΄ΡΠ²Π°ΡΡ ΠΌΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½ΠΎ Π½Π΅ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΌΠ½Π΅ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° Π΅Π³ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ Ρ Π·Π°Π±ΠΎΡΡΡΡ ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΌΠ½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ²ΠΎΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ, ΡΡΠΎ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΉ Π²ΡΠ±ΡΠΎΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈ Π·Π°ΡΡΠ°Ρ Π±Π΅Π· Π²ΡΡΠΊΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Ρ.
Π― Π½Π΅ Π³ΠΎΠ²ΠΎΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΅ΡΡΡ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, Π½ΠΎ Π΅Π³ΠΎ Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π½Π°Π²ΡΠ·ΡΠ²Π°ΡΡ Π»ΡΠ΄ΡΠΌ.
@ianopolous Π― Π΄ΡΠΌΠ°Ρ, Π²Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»Ρ uber-JAR. Π― Π³ΠΎΠ²ΠΎΡΡ ΠΎΠ± ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ: ΠΌΠ½ΠΎΠ³ΠΎΠΌΠΎΠ΄ΡΠ»ΡΠ½Π°Ρ ΡΠ±ΠΎΡΠΊΠ° , Π³Π΄Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π½Π΅ ΠΏΡΠΎΡΠ°ΡΠΈΠ²Π°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ ΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΡΠΎΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π² ΡΠ²ΠΎΡ ΡΠ±ΠΎΡΠΊΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Apache Camel , Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ 200 Π°Π΄Π°ΠΏΡΠ΅ΡΠΎΠ² Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. ΠΠ°ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΡ Π²Π΅ΡΠ±Π»ΡΠΆΡΠ΅ ΡΠ΄ΡΠΎ ββ(ΠΎΡΠ΅Π½Ρ ΡΠΎΠ½ΠΊΠΎΠ΅) + ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ (Π²Π΅ΡΠ±Π»ΡΠ΄-mqtt, Π²Π΅ΡΠ±Π»ΡΠ΄-ftp ΠΈ Ρ. Π΄.), ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Maven/Gradle ΡΠ°ΡΡΡΠΈΡΠ°ΡΡ Π΄Π»Ρ ΠΌΠ΅Π½Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ Π³ΡΠ°Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ.
Ρ ΠΏΡΠΎΡΠΈΠ² ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ Π΅Π³ΠΎ Π² http-client
. ΠΊΠ°ΠΊ Ρ ΡΠΆΠ΅ Π³ΠΎΠ²ΠΎΡΠΈΠ», php-api-client ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΎΠΉ html ΠΈΠ»ΠΈ Ρ ΡΠΎΠΊΠ΅ΡΠΎΠΌ. ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ Π΄ΡΡΠ³ΠΎΠΉ Π΄ΡΠ°ΠΉΠ²Π΅Ρ , ΠΎΡΡΠ°Π»ΡΠ½Π°Ρ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π° ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅. ΡΠ°ΠΊ ΡΡΠΎ Ρ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠΎΠ³ΠΎ, ΡΡΠΎ http-*
Π½Π΅ Π΄Π°Π»ΡΠ½ΠΎΠ²ΠΈΠ΄Π΅Π½. Π½ΠΎ Ρ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ Ρ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π² LANG-ipfs-client
ΠΈΠ»ΠΈ LANG-ipfs-api-client
Π― ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ Ρ @digitalkaoz : ΡΡΠΎ Π·Π°Π²ΠΈΡΠΈΡ, Ρ Π΄ΡΠΌΠ°Ρ, ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΏΡΠ΅Π΄ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ Π»ΠΈ Π΄Π°Π½Π½Π°Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠ°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π΄ΡΡΠ³ΠΈΡ ΡΡΠ°Π½ΡΠΏΠΎΡΡΠΎΠ² ΠΈΠ»ΠΈ Π½Π΅Ρ. (Π ΡΡΠΎΠΌ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Python, ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, Π±ΡΠ΄Π΅Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π² Π½Π΅ΠΉ ΡΠΆΠ΅ Π΅ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΠ΅ ΡΡΠ°Π½ΡΠΏΠΎΡΡΡ, ΠΈ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π»Π΅Π³ΠΊΠΎ ΠΈΠΌΠ΅ΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π² ΡΠ·ΡΠΊΠ°Ρ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π².)
ΠΡΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ. ΠΠ°ΠΊΡΡΡΠΈΠ΅.
@Kubuxu Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π²ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². Π‘ΠΌ. ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ.
Π₯ΠΎΡΠΎΡΠΎ, ΠΈΠ·Π²ΠΈΠ½ΠΈΡΠ΅ Π·Π° ΡΡΠΎ.
ΠΠΎΠ»ΠΆΠ½Ρ Π»ΠΈ Π²ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ HTTP API ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²ΡΠ²Π°ΡΡΡΡ Π² ipfs-http-client?
ΠΠ°ΠΆΠ΅ΡΡΡ, Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ Π½Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Π»ΠΈ ΡΡΠΎΠΌΡ ΠΏΡΠΈΠΌΠ΅ΡΡ, Π½ΠΎ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΠΎΡΠΊΡΡΡΡΠΌ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΈΠΌΡ, ΠΊΠΎΠ³Π΄Π° ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΡΠ΅ ΡΡΠΎΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ³Π»Π°ΡΠ½Ρ Ρ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ
*-ipfs-api
Π²*-ipfs-http-client