Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.10.2010, 17:40
Интересующийся
Отправить личное сообщение для Cepin Посмотреть профиль Найти все сообщения от Cepin
 
Регистрация: 07.03.2009
Сообщений: 21

генерация UserScript
Здравствуйте, возникла следующая проблема, всю голову себе сломал.

Задача: Написать выдачу генерируемого UserScript с настройками.
Пользователь заходит на страницу, выбирает нужные настройки, жмёт сгенерировать и ему должен установится скрипт.

Но сделать такое не получается и вот почему.

Opera - сохранять нужно вручную скрипт в папку.
Firefox, Chrome - перехват адреса скрипте и предложение его установить.

Сначала пошел по стандартному сценарию, который казался мне верным.
Выдачу скрипта сделать через

header('Content-Type: text/javascript; charset=utf-8');
header('Content-Disposition: attachment; filename="script.user.js"');


Opera - нормально.
Firefox,Chrome - не перехватывают.

Ладно, значит им нужно, чтобы script.user.js был в адресной строке.



Попытка номер два.
Делаю в .htaccess исполняемый файл client.user.js - как пхп.
В форме генерации шлю на него данных.

Итог:
Opera,Chrome - нормально.
Firefox - Отказывается слать POST запрос на js файл. Форма постовая, но фаерфокс видит js расширение и шлет GET запрос.


Пробую следующий способ:
.htaccess
RewriteRule client.user.js gen.php


Делаю чтобы при запросе скрипта js, срабатывал скрипт gen.php

При нажатии генерации, происходит сохранение скрипта и пользователя редиректит на client.user.js (который обрабатывает файл gen.php)

Opera,Chrome - нормально обрабатывают скрипт.
Firefox - показывает содержимое скрипта, делает запрос на установку, но кнопка "Установить" не работает!

Применять способ генерации временных ссылок совсем не хочется для такого простого скрипта. Думаю, может другие способы есть выдачи пользовательских скриптов?
Ответить с цитированием
  #2 (permalink)  
Старый 24.10.2010, 17:58
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

А Огнелис вообще устанавливает расширения с Вашего сервера? Может там в настройках чего покрутить надо?
Ответить с цитированием
  #3 (permalink)  
Старый 24.10.2010, 18:03
Интересующийся
Отправить личное сообщение для Cepin Посмотреть профиль Найти все сообщения от Cepin
 
Регистрация: 07.03.2009
Сообщений: 21

Да, устанавливает и другие скрипты и этот если напрямую запихнуть его в адресную строку.

Но непонятно, почему так фаерфокс срабатывает.

<form method="post" action="client.user.js">


Во всех браузерах, отправляет POST запрос на этот файл, Firefox - отправляет GET.

Добавляю знак "?"
<form method="post" action="client.user.js?">


Firefox - Отправляет POST запрос, но скрипт уже не перехватывается гризманкой.
Ответить с цитированием
  #4 (permalink)  
Старый 24.10.2010, 19:15
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Если в официальной справке об этом ничего не говорится, то это либо:
1. Баг. Надо зарепортить.
2. Фича.
В обоих случаях придется как-то бороться с этим. Например - записывать параметры в куки, и отправлять GET запрос.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическая генерация mighty Events/DOM/Window 0 18.10.2010 10:49
Userscript для скрытия блока MustDie Firefox/Mozilla 12 02.08.2010 14:54
Генерация JavaScript в зависимости от прав пользователя iDeadRat Серверные языки и технологии 24 27.04.2009 15:42
Генерация thumbnail на стороне клиента с передачей на сервер King555 Общие вопросы Javascript 2 30.03.2009 15:09
Генерация имен Добрый Человек Общие вопросы Javascript 8 23.03.2009 11:59