2017-02-16 10 views
0

私はPolymerを使用して複数ページのアプリケーションを構築しています。私はPHPファイルへのリンクを持っています:Polymer:PHPファイルへのリンク方法

<p><a href="/api/export_project.php?id=[[project.number]]">Export as PDF</a></p> 

このPHPファイルはPDFファイルを生成します。ブラウザを直接指すと、PDFファイルを保存するかどうかを確認するメッセージが表示されます。

しかし、Polymer内のリンクフォームをクリックすると、「ページが見つかりません」というコンポーネントに移動します。

# Pass all requests not referring directly to files in the filesystem to index.html 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} !=/favicon.ico 
RewriteRule^index.html [L] 

をそれが実際に動作しますが、私はPHPファイルを直接ブラウザをポイントしたとき、それはそれを適切に実行するので:

私の.htaccessファイルが存在しないファイルを除いて、ポリマーのindex.htmlをにすべてをリダイレクトします。

したがって、このリンクを内部ルータのものとして扱わないようPolymerに指示するにはどうすればよいですか?

ありがとうございました。

+0

AJAXを使用しない理由。あなたはいつでも 'a'で関数を呼び出すことができ、内部関数はajaxを呼び出してphpサイトを呼び出し、pdfファイル(またはbase64コードなど)を返して変換することができます。 'RewriteCond%{REQUEST_FILENAME}!-f'という別の行を追加しようとすると、それは.htaccessの問題だとは思わない。 ' RewriteCond%{REQUEST_URI}!=/api/export_project.php'それが助けてくれると思います –

+0

ああ、実際には解決は簡単でしたが、私はちょうど絶対URLを使用する必要がありました:

Export as PDF

Hubert

答えて

0

ソリューションは、私はちょうどではなく、相対よりも、絶対URLを使用するために必要な、非常に簡単だった:

<p><a href="http://www.something.com/api/export_project.php?id=[[project.number]]">Export as PDF</a></p> 
関連する問題