LinuxでのWEB製作経験ある方にお聞きします。
Fedora Core上のテキストファイルの読み書きをFireFoxのWEB画面からjavascriptを使って行いたいのですが、どのような手法がありますか?ブラウザの警告は出ても問題ないです。
ちなみにwindowsではwshを使いますよね。こんな感じに。
var fso = new ActiveXObject("Scripting.FileSystemObject");
よろしくお願いします。
この質問では、何がしたいか分からないかもしれません。
ちなみに、windows でやったときは、サーバとクライアントは、同一マシンですか?
サーバはIISでJScriptでCGIを書かれていたのでしょうか?
ファイルの書き出しは、サーバ側で行われたのでしょうか?
または、クライアント側で行われたのでしょうか?
まず、どちら側(サーバ、クライアント)のディスクに書き込みを行いたいのかを整理する必要があります。
※ FireFox(クライアント)は、FedoraCode上で動作していますか?
推測ですが、サーバ側のファイルを読み書きを行いたいと思うのですが・・・。
読み込みは、公開ディレクトリにファイルがあったり、表示用のCGIあれば出来ると思います。
書き込みに関しては、サーバサイドのCGIがないと出来ません。
※ プロトコルを、http に限定し、webdav は考慮していません。
javascript では基本的にファイルを直接いじることは不可能です。
なので、http サーバ側のCGIなどと通信していじる必要があります。
いわゆるAJAX式です。
たとえば、下記のようにPHPと組み合わせるなど。
http://www.atmarkit.co.jp/fwcr/rensai/ajax_php02/01.html
クライアントのファイルを操作する場合でもCGIを経由する必要があるためクライアントに http サーバがないとダメですね。
単純に javascript から CGI を起動する場合、document.form名.submit() などで form に指定したactionを実行できます。
説明図を追記しましたが、それ以前に回答いただいたんですね。えーとクライアントの話です。
うーん。無理なんですかねー。ローカルファイルにアクセスするのは。もうちょっと回答を募ってみます。ありがとうございました。
・・Firefoxのプラグインを作るしかないのかなー?
javascriptで構成されているTiddlyWikiがローカルで動作し、
ファイルの保存も出来ます。当然ソースコードも見れるので
参考になるんじゃないでしょうか。
# Ability to SaveChanges on:
* FireFox and Opera under all operating systems
* InternetExplorer under Windows
* Safari and Camino under OS X
* Minimo on Nokia 770
mozillaSaveFile()の部分ですかね。
なるほどー ありがとうございます。
saveChanges関数→saveFile関数→mozillaSaveFile関数とコールしてますね
完全ローカルで1ファイル完結なんですねー(これwikiって呼んでいいのかなー?)
私はこのサイトの画面をそのままローカルに保存したんですが、なんか間違ってますか?
画面上にファイルを保存って操作がみあたらないのですが?
ソースは読めるがツールの使い方がわからないww
でも可能性のある方法ですね。ありがとうございます。
※追記
IEでは動かないようですねw でもこれすごいかも。mozillaLoadFileがやりたいことにかなり近いです。ありがとうございました。
あーまた説明が足りないようですね。
別ページに環境などを書きました。
http://www.geocities.jp/upride_com/
こちらでご確認下さい。
javascriptなのでクライアントサイドの話です。
FedoraCore端末がクライアントになります。
そして対象ファイルもクライアントのリソースです。
クライアントの場合でもCGIを使うんですかね?
javascriptからCGIを動作させるってできるのかなー?
よろしくですーー。