moebius
Aktives Mitglied
- Registriert
- 8. Dez. 2014
- Beiträge
- 3
- Punkte
- 26
Ein herzliches Guten Abend in die Runde! 
Ich habe mich hier im xendach-Forum mit der Hoffnung registriert, dass mir vielleicht jemand bei dem folgenden Problem helfen kann:
Für den Firefox-Browser möchte ich mir gerne ein Search-Plugin für ein Forum erstellen, das auf XenForo läuft (also ebenso wie z.B. xendach). Das ist u.a. ganz einfach mit dem Firefox-Add-On Add To Search Bar möglich. Mit dem Search-Plugin kann man dann direkt über die Search Bar von Firefox das betreffende Forum durchsuchen, muss also nicht erst die Forumswebseite im Browser aufrufen und das dortige Suchfeld benutzen.
Das Add-On legt dafür im Firefox-Profilordner im Unterverzeichnis searchplugins eine xml-Datei an. Der darin enthaltene Code lässt sich ganz normal in einem Texteditor ansehen und modifizieren.
Die xml-Datei für das Forum xendach sieht dann wie folgt aus:
Bei offenen Foren wie xendach, bei denen die Suchfunktion auch für nicht-registrierte Nutzer freigegeben ist, funktioniert das wunderbar und ohne Probleme.
In Foren, in denen die Suchfunktion nur für registrierte Nutzer freigegeben ist, funktioniert das Search-Plugin jedoch nicht (bzw. nur für die Zeitdauer einer Session; wenn ich das Plugin z.B. am Folgetag nutzen möchte, funktioniert es nicht mehr; näheres siehe unten) - auch dann nicht, wenn ich mich vorher als registrierter Nutzer bei diesem Forum eingeloggt habe.
Ich meine auch den Grund dafür gefunden zu haben: Er liegt sehr wahrscheinlich in der Zeile mit dem Sicherheitsparameter xfToken. Denn im Code der Search-Plugins aller Foren, bei denen das Search-Plugin nicht dauerhaft funktioniert, ist in dieser Zeile ein Wert angegeben, z.B.
Der xfToken scheint sessionabhängig vergeben zu werden, so dass das Search-Plugin direkt nach der Erstellung zwar eine Weile funktioniert, nach Ablauf der Session aber nicht mehr. Statt der Suchergebnisse meldet die XenForo Software des betreffenden Forums dann:
"Ein Sicherheitsfehler ist aufgetreten. Bitte verwende den "Zurück"-Button in deinem Browser, aktualisiere die Seite und versuche es erneut."
Mich würde nun folgendes interessieren:
1. Ist es evt. möglich, das Search-Plugin so zu erstellen, dass der Inhalt für den Sicherheitsparameter "_xfToken" jeweils dynamisch aus der jeweiligen Session (z.B. dem Cookie) ermittelt und hinzugefügt wird? Ich denke dabei z.B. auch an die Möglichkeiten, die Bookmarklets bieten.
Hinweise für die Erstellung von OpenSearch plugins für Firefox liefert z.B. diese Seite:
https://developer.mozilla.org/en-US/Add-ons/Creating_OpenSearch_plugins_for_Firefox
2. Was ist z.B. an der Forensoftware WoltLab Burning Board anders, dass in Foren, die mit dieser Software laufen, das beschriebene Problem mit den Search-Plugins nie auftritt? (Vermutlich verwendet WBB keinen solchen Sicherheitsparameter)

Ich habe mich hier im xendach-Forum mit der Hoffnung registriert, dass mir vielleicht jemand bei dem folgenden Problem helfen kann:
Für den Firefox-Browser möchte ich mir gerne ein Search-Plugin für ein Forum erstellen, das auf XenForo läuft (also ebenso wie z.B. xendach). Das ist u.a. ganz einfach mit dem Firefox-Add-On Add To Search Bar möglich. Mit dem Search-Plugin kann man dann direkt über die Search Bar von Firefox das betreffende Forum durchsuchen, muss also nicht erst die Forumswebseite im Browser aufrufen und das dortige Suchfeld benutzen.
Das Add-On legt dafür im Firefox-Profilordner im Unterverzeichnis searchplugins eine xml-Datei an. Der darin enthaltene Code lässt sich ganz normal in einem Texteditor ansehen und modifizieren.
Die xml-Datei für das Forum xendach sieht dann wie folgt aus:
Code:
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/">
<os:ShortName>xendach</os:ShortName>
<os:Description>xendach</os:Description>
<os:InputEncoding>UTF-8</os:InputEncoding>
<os:Image width="16" height="16">data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADeElEQVQ4jU3TW2iTdxjH8bdtsprOWlvNsQNFNoZXirpB50AGu5C5U9raQ5rkTZaubzpcVg9zbOlAcaWHpKbvm7/2mCY9Sms6R9lmdbXWsYOMjhZZnayGLdNeFIbgKKMrzO8uWsSL5+7hA7/nxyMZZbXMUhMTRlkVRlkVJo8mMu1NwuLRxNLDf0Ts5p/CKGtCb28SJlkTRll7vGupiQnJ6I4mCuuSWP1xbP44Blc7zx8bZm5xme7pBbz9P9NyY5GiU+NsdLVjrolh9cex+uMU1iWRjLImrP44Zk+UzOJmXvn0Aumlh3zUP02GvQnD4RD760cITS7g6/mWLS6VvMqzmD1RrP74GmBWesmwN+MTX3P/r78pbb5Ehr0ZsyeKxRMlt6IVq1cQGLxJ48Qd9nw4QE5ZCLPSi7TJERF6x3kakz+ysPiAfSf60JW0YPFEMXs0TLKGSY5S4FQxHA5x4FSS8OQCrvYptvi6kbZVCzE2k+b72/d5xncOQ3kYizeKySMwuDUyKlrJdKhkOVWyqtqQilvIdau8NzxDw7U00vH4lBj47i55jgibHRGs3ihWT5R8l4ZJ6WB85jeu3UoxMZviymyKK3Mprs6lKA5d4uXPvkLaXKWKbLmL7PIwG50q+V5BjiOCrjzMtvd7gEcE4pPsPt7HC8Fh9gWHeLH+AtuPdJMrdyDlV0VErpLgncQP7Dg6iPR2E/vPfMEbbVcxK50sr/zLgdMjSG+Gkcq19Ymgd2rY1lpQRaYnxmutlzn95TyFtV1o1//g2aP9mJROVlZXOdgwilQSQudUyXJqZDlVnpafqNGgJJBKw7i7bvDx53PsPDmIVBzGWtvF/L0lfrq7yPVf0kzPp5m+nWb613u8FBwiz9v1BFDSwqHWyyRvPWDniQGk0jDGmk56vpmhJDzG7pN97P1kgL3BQfYEhyioPo+5pncNkOQedgVHaZy4Q1H9KJGp38n3tWNROnjEf7x65iLSWyGkShWpQkWqVMl2r0fY5IgIc2CQ0GSKXcERpNebsEcnOXZxFlttN8srKxxsHEMqO4teFjzlFuhkwQb53BqQXxURtsAwOwJx9FVt5MiCDS6N7Ud6eS4QY2V1lUONyceAXl4DDLJYP6InmrB9MMrW6h5s6x9pVXop8HWTW9tHUcM4WwND6N6No1cS6JUEOiVBjpKgsC7J/6wDSLbBmT8WAAAAAElFTkSuQmCC</os:Image>
<SearchForm>http://www.xendach.de/</SearchForm>
<os:Url type="text/html" method="POST" template="http://www.xendach.de/search/search">
<os:Param name="keywords" value="{searchTerms}"/>
<os:Param name="users" value=""/>
<os:Param name="date" value=""/>
<os:Param name="_xfToken" value=""/>
</os:Url>
</SearchPlugin>
Bei offenen Foren wie xendach, bei denen die Suchfunktion auch für nicht-registrierte Nutzer freigegeben ist, funktioniert das wunderbar und ohne Probleme.
In Foren, in denen die Suchfunktion nur für registrierte Nutzer freigegeben ist, funktioniert das Search-Plugin jedoch nicht (bzw. nur für die Zeitdauer einer Session; wenn ich das Plugin z.B. am Folgetag nutzen möchte, funktioniert es nicht mehr; näheres siehe unten) - auch dann nicht, wenn ich mich vorher als registrierter Nutzer bei diesem Forum eingeloggt habe.
Ich meine auch den Grund dafür gefunden zu haben: Er liegt sehr wahrscheinlich in der Zeile mit dem Sicherheitsparameter xfToken. Denn im Code der Search-Plugins aller Foren, bei denen das Search-Plugin nicht dauerhaft funktioniert, ist in dieser Zeile ein Wert angegeben, z.B.
Code:
<os:Param name="_xfToken" value="
416%2E1209251402%2C01ff261d241392b54184aacf2262d43fae50e68a"/>
Der xfToken scheint sessionabhängig vergeben zu werden, so dass das Search-Plugin direkt nach der Erstellung zwar eine Weile funktioniert, nach Ablauf der Session aber nicht mehr. Statt der Suchergebnisse meldet die XenForo Software des betreffenden Forums dann:
"Ein Sicherheitsfehler ist aufgetreten. Bitte verwende den "Zurück"-Button in deinem Browser, aktualisiere die Seite und versuche es erneut."
Mich würde nun folgendes interessieren:
1. Ist es evt. möglich, das Search-Plugin so zu erstellen, dass der Inhalt für den Sicherheitsparameter "_xfToken" jeweils dynamisch aus der jeweiligen Session (z.B. dem Cookie) ermittelt und hinzugefügt wird? Ich denke dabei z.B. auch an die Möglichkeiten, die Bookmarklets bieten.
Hinweise für die Erstellung von OpenSearch plugins für Firefox liefert z.B. diese Seite:
https://developer.mozilla.org/en-US/Add-ons/Creating_OpenSearch_plugins_for_Firefox
2. Was ist z.B. an der Forensoftware WoltLab Burning Board anders, dass in Foren, die mit dieser Software laufen, das beschriebene Problem mit den Search-Plugins nie auftritt? (Vermutlich verwendet WBB keinen solchen Sicherheitsparameter)