Bitcoin Forum
May 22, 2024, 02:25:59 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: прототип магазина файлов  (Read 522 times)
mak (OP)
Sr. Member
****
Offline Offline

Activity: 337
Merit: 252


Forth


View Profile
June 12, 2017, 10:24:08 AM
 #1

Я на Питоне написал прототип магазина файлов http://fpauk.narod.ru/ProtoFileShop.tar.gz
Сообщал в "Идеях"
В качестве интерфейса используется стандартный браузер с HTML запросами.
Магазин ProtoFileShop.py переадресует запрос файла на localhost:8120 на запущенный специальный
 клиент ProtoFileBuyer.py . Тот опять к магазину.
Под FireFox все нормально. Chromeium перенаправив запрос, оставляет канал открытым
и ProtoFileBuyer.py не зайти. Как этот канал закрыть со стороны магазина?

mak (OP)
Sr. Member
****
Offline Offline

Activity: 337
Merit: 252


Forth


View Profile
June 22, 2017, 07:04:50 PM
 #2

 Для асинхронной работы сервера нужно воспользоваться библиотекой ThreadingMixIn
В http://fpauk.narod.ru/ProtoFileShop1.tar.gz все работает.
За реализацию файл сервера в виде плагина для electrum (electrum-ltc) даю 222 mBTC
Это мне нужно в качестве прототипа

mak (OP)
Sr. Member
****
Offline Offline

Activity: 337
Merit: 252


Forth


View Profile
June 23, 2017, 01:54:08 PM
 #3

Смотрят другие плагины, методом тыка реализацию файл сервера в виде плагина:
Code:
from electrum_ltc.plugins import BasePlugin, hook
import SimpleHTTPServer
import SocketServer
import threading

class HTTPServer(threading.Thread):

    def __init__(self):
        threading.Thread.__init__(self)
        self.daemon = True

    def run(self):
        Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
        httpd = SocketServer.TCPServer(("",  8000), Handler)
        httpd.serve_forever()

class Plugin(BasePlugin):

    def __init__(self, parent, config, name):
        BasePlugin.__init__(self, parent, config, name)
        self.Server = HTTPServer()
        self.Server.start()

Вроде работает.. Не знаю, насколько корректно.
Буду пробовать заменить это на покупателя файлов.



Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!