Oznámení

Provoz fóra byl ukončen

Texy jako WS

před 14 lety

rarous
Člen | 59

Tak mě napadlo, jestli by jste nechtěl zveřejnit jednoduchou xml webovou službu, která by přijímala texy! syntax a vracela xhtml výstup, třeba jako SOAP zprávy.

Díky za zvážení.

před 14 lety

David Grudl
Nette Core | 6806

to je dobrý nápad, něco takového vytvořím a pošlu sem odkaz.

před 14 lety

rarous
Člen | 59

uz se tesim :) myslim ze je to lepsi reseni, nez prepisovat Texy! do jine platformy, jak jsem mel kdysi v plánu…

před 14 lety

pavlik
Člen | 26

Ve škole jsem dělal seminárku na ASP.NET a původně jsem chtěl Texy! použít (nakonec z toho z časových důvodů sešlo), takže vím o 2 způsobech, jak Texy na .NETu rozchodit:

  1. webová služba – což je v PHP 5 hračka a taky je to asi způsob, kterým by spoly měly odlišné platformy komunikovat
  2. Phalanger šikovných kluků z matfyzu (PHP-runtime pro .NET). To by mělo výhodu, že by to bylo o hodně rychlejší (Phalanger je sám o sobě daleko rychlejší než Zend Engine, navíc webové služby mají svou režii).

Pokud někde bude webové služba, bude to chvályhodné, ale bál bych se postupného přetížení serveru. Kdo Texy potřebuje v .NETu, Phalanger je pro něj dobrým řešením (sám jsem ale netestoval, jestli všechno funguje – ale když funguje PhpBB, mohlo by i Texy :) ). Posledním řešením by bylo dát ke stažení WSDL, skript apod., aby si každý mohl rozběhnout webovou službu sám a měl tak výkon pod kontrolou.

Editoval pavlik (7. 7. 2005 23:15)

před 14 lety

David Grudl
Nette Core | 6806

Jak si představujete, že by (technicky) měla taková webová služba fungovat? Přiznám se, že zkratky WSDL a SOAP mi nic neříkají (leda že WSDL je ADSL nabízené firmou WS Teleshoping a SOAP + Opera 8.0 = soapopera :-)

Původně jsem zamýšlel něco jako POST na HTTP server, který vrátí XHTML…

před 14 lety

rarous
Člen | 59

SOAP je rozšíření POST, kde místo Forms hodnot je XML zpráva, která říká, co po službě chceme a jaké datové typy použít, zde by stačil Request ve formátu:

POST /ws/texyservice.php HTTP/1.1
Host: texy.info
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://texy.info/PrevedDoXhtml"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <PrevedDoXhtml xmlns="https://texy.info">
      <text>string</text>
    </PrevedDoXhtml>
  </soap:Body>
</soap:Envelope>

misto string pak bude text v Texy! syntaxu. No a ta by vrátila neco jako:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <PrevedDoXhtmlResponse xmlns="https://texy.info">
      <PrevedDoXhtmlResult>string</PrevedDoXhtmlResult>
    </PrevedDoXhtmlResponse>
  </soap:Body>
</soap:Envelope>

opět string je převedený text do XHTML :)

AD Phalanger: Phalanger je pouze kompilátor php kódu do MSIL, díky tomu je kód rychlejší, ovšem neexistuje spůsob, jak dostat PHP „třídy“ do .NETu, ale jestli to bylo myšleno jako platforma pro běh té služby, pak by to asi bylo lepší. :)

Ovšem nápad s POSTem není taky nezajímavý ;) Určitě je mnohem jednodušší na implementaci. SOAP řešení je zase více kompatibilní a směřuje přesně tam, na co poukazuju v diskusi pod Pixyho příspěvkem :) WSDL zase popíše všechno možné o službě a v .Netu nebo v Javě z toho lze vygenerovat třída, z kterou se dá mnohem lépe pracovat než s obyčejnýma POST požadavkama. Ještě jsem našel PHP knihovnu, ktera by pri tvorbe sluzby mohla pomoci http://dietrich.ganx4.com/nusoap/

Editoval rarous (8. 7. 2005 16:04)

před 14 lety

pavlik
Člen | 26

PHP 5 přímo obsahuje podporu pro SOAP, vytvoření web. služby je otázkou pár řádků. Jinak dgx, webové služby jsou standard, není to žádný vágní pojem, ke kterému by se mělo (nebo mohlo) vymýšlet, jak to má technicky fungovat. rarous už ale vše vyřešil.

Ad Phalanger: Phalanger je normální náhrada Zend engine, takže by pod tím Texy! mělo bez problémů fungovat. Ale nezkoušel jsem to.

před 14 lety

rarous
Člen | 59

pavlik psal:

Ad Phalanger: Phalanger je normální náhrada Zend engine, takže by pod tím Texy! mělo bez problémů fungovat. Ale nezkoušel jsem to.

Ok to jsem netvrdil, ale nejde to pouzit jako trida v projektu :)
Ještě mám problém s výstupem, některý diakritický znaky se zobrazujou jako otaznik, vsechno jedu pres UTF-8, tak to jeste poladim… Az bude cas, trochu tu sluzbu rozsirim o nejakou vetsi funkcnost (nejaky nastaveni vystupu) a zverejnim to na svych strankach…

před 14 lety

rarous
Člen | 59

Omlouvám se za dezinformace ohledne Phalangeru, az ted jsem si na nej nasel cas a vypada fakt zajimave. www.php-compiler.net

před 14 lety

rarous
Člen | 59

Tak jsem se konečně dostal k tomu, abych dodělal ukázkovou službu. Tutoriálek jak na to je na mejch stránkách. Doufám, že se to bude někomu hodit stejně jako mě. Kdyby to chtěl někdo vylepšit a zveřejnit službu na dostatečně výkoným serveru, kterým webzadarma určitě není, budu velice potěšen ;) Jsem totiž PHPkovej ignorant ;) a moc v něm neumím…

Editoval rarous (16. 6. 2006 10:11)

před 13 lety

David Grudl
Nette Core | 6806

Tak jsem zprovoznil testovací XML-RPC verzi Texy! Služba běží na adrese https://xmlrpc.texy.info/ a podrobné informace najdete zde.

před 13 lety

rarous
Člen | 59

To je dobrá zpráva :)

před 13 lety

mishak
Člen | 100

Feedback is welcomen. nebylo by lepší welcome – odezva je vítána místo odezva je uvítána?

před 13 lety

mishak
Člen | 100

Napíšu i další překlepy ať to pak David opraví a můj komentář smaže ;-)
This is eexplained below. 2× e
something it couldn't understand. → something that
A more detailed error report is added onto the end of the phrase above
→ A more detailed error report is appended to the phrase above

Jinak dobrý počin :) Možná že přidám do 3WEčka api pro Texy1 online konvertor :) ovšem i s kredity :). BTW neporuším tím licenci (3WE je freeware) GNU uvolnění plánuji až s verzí 1.0

před 13 lety

SneakerXZ
Člen | 2

pavlik psal:

Ve škole jsem dělal seminárku na ASP.NET a původně jsem chtěl Texy! použít (nakonec z toho z časových důvodů sešlo), takže vím o 2 způsobech, jak Texy na .NETu rozchodit:

  1. webová služba – což je v PHP 5 hračka a taky je to asi způsob, kterým by spoly měly odlišné platformy komunikovat
  2. Phalanger šikovných kluků z matfyzu (PHP-runtime pro .NET). To by mělo výhodu, že by to bylo o hodně rychlejší (Phalanger je sám o sobě daleko rychlejší než Zend Engine, navíc webové služby mají svou režii).

Pokud někde bude webové služba, bude to chvályhodné, ale bál bych se postupného přetížení serveru. Kdo Texy potřebuje v .NETu, Phalanger je pro něj dobrým řešením (sám jsem ale netestoval, jestli všechno funguje – ale když funguje PhpBB, mohlo by i Texy :) ). Posledním řešením by bylo dát ke stažení WSDL, skript apod., aby si každý mohl rozběhnout webovou službu sám a měl tak výkon pod kontrolou.

Dík to jsem rád, že tohle slyšim. Jelikož když jsem na první pohled vidělt Texy! myslel jsem si, že je to nějaký úbohý projekt, který využivaji jen lidi co si neumí napsat svoje, ale polepšim přezkoumání jsem zjistil, že je to velice propracovaný systém, který muselo dát velkou práci napsat a teď eště rád slyšim, že je způsob jak budu moci využít Texy! i v ASP.NET.

Editoval SneakerXZ (29. 6. 2006 21:00)

před 13 lety

rarous
Člen | 59

nejlepší způsob jak dostat Texy do dotnetu je Texy.net :D Odkaz na ní najdeš v sekci Oznámení a stabilní vezri doufám zařadí David do sekce ke stažení. proto testujte a pokud najdete nějakou chybu nebo přijdete na to jak něco ještě vylepšit, přidat, určitě připomínky přivítám!