問題タブ [restler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
restler - RESTリクエストはExplorerの外部では機能しません
RestlerのAPIExplorer(Swagger UIのフォーク)を使用しています。そこでサービス呼び出しをテストすると正常に機能しますが、同じURLを切り取ってChromeのAdvanced RESTクライアントに貼り付けると、「403Forbidden」エラーが発生します。どうしてそれができるのでしょうか?リクエストで渡す必要のある必須のヘッダーパラメータはありますか?
スクリーンショットは次のとおりです。
mod-rewrite - リライトとレストラー
Luracast Restlerと Restler のAPI Explorer ( Swagger UIのフォーク)の書き換えの問題に取り組んでいます。OSX マシンの localhost で完全に動作する開発環境を使用していますが、同じファイル (.htaccess ファイルを含む) が、Ubuntu を実行している製品前のボックスでは動作しません。どちらの場合も httpd.conf ファイルにアクセスでき、何らかの回答を求めてそれらに注ぎ込みました。確かに、mod-rewrite はまだ私にとってある種の闇の魔法なので、他の人からアドバイスをもらいたいと思っています。
httpd.conf に次のエントリを追加して、両方の環境でログを有効にしました。
これにより、プリプロダクションでいくつかの興味深い結果が得られます。を呼び出すとhttp://website.com/api/explorer
、次のようになります。
興味深いことに、私には説明がつきませんが、ローカル環境で同じ URL を呼び出してもまったくログが記録されないことです (0 バイトのログがあるため、httpd.conf で正しく構成したと思います)。ローカル環境 (Restler WORKS) には/api/explorer
、/api/explorer/index.html
.
の .htaccess ファイルは/api/explorer
次のようになります。
その中/api
には:
アップデート
@faa の提案に基づいて、.htaccess ファイルにベース パスを追加しました。
また[QSA,L]
、ルールのパラメーターを に変更しました[QSA,L,DPI]
。ログには次のように記載されています。
私が困惑するのは、これを正しく読んでいる場合、次のことです。
- 「」から「index.html」に正しくリダイレクトします
- しかし、2行目の「接頭辞を置き換えようとする」は完全に冗長なようです
- そしてなぜ!#?! 「/var/www/html/api/explorer/index.html」で内部リダイレクトを行いますか?
私がこれを行うと、次のls -l /var/www/html/api/explorer/index.html
ようになります。
明らかにこのファイルが存在し、apache がこのコンテンツを提供するためのパーミッションは問題ありません。
更新 2
次のような.htaccessファイルを持つルートにWordpressをインストールしたことも注目に値します(ところで、これはデフォルトのWPと一般的なW3 Total Cacheプラグインです):
php - JSON リクエストですべての入力をキャプチャする (Restler を使用)
ほとんどの入力パラメーターが JSON 要求オブジェクトとして配置される要求があります。文書化の目的で、ユーザーが入力できる最も一般的なフィールドを指定したいのですが、JSON 要求に入る名前の値には多くの変動性があり、これらすべてを文書化したくありません。面倒になる。
ここに私が今持っているもののスクリーンショットがあります:
例として、"people-with" という JSON プロパティを入れて "['joe','paul','jane'] に設定したい場合、それは JSON で簡単に実行できますが、どうすればよいですか?私の PHP/Restler コードでそれを拾います. 現在、このサービスの署名は次のとおりです。
ps 補足として、数日前に発生した POST の問題を回避するために、この API サービスを一時的に PUT に変更しました。
php - SimpleAuth.phpを実行している間、RESTlerで致命的なエラーが発生します
私はこれを次のURLで実行し、SimpleAuth.phpを実行しようとしています
http://localhost/restler/public/examples/nof/SimpleAuth.php
そしてそれは与える
SimpleAuth.phpのコンテンツ
iAuthenticate.php
php - Restlerを使用して画像を返す
Luracast Restlerを使用して画像を返すことは可能ですか?電話のようなもの:
pngをダウンロードするには?
php - URLで別の関数名を渡すと404が表示されるのはなぜですか?
Restlerの動作がわかりません。私が通過するときgetuser/2
それはうまくいきます、しかし私が通過するとき/getalluser
それは与えます
しかし、関数名getalluser
を変更すると正常buyalluser
に動作します。
誰かがRESTlerフレームワークの関数名の問題を教えてもらえますか?
php - PHPでCurlを使用してデータをPOSTする方法は?
restler フレームワークで Web サービスを作成し、作成したクライアント ライブラリから php で curl を使用してデータを挿入しようとしています。
api.php
クライアントからのテスト目的:testing.php
しかし、それは404を投げています。助けてください。
php - Restler 3 - 設定のセットアップ
私はPHP 5.3.1を搭載したXAMPPを使用しており、htdocsフォルダーにrestler構造があります
私のhtdocsフォルダーには、index.phpがあります
そしてsay.php
ブラウザで、私は
localhost/index.php/言う
また
localhost/index.php/Say/こんにちは
次のメッセージが表示されます
致命的なエラー: 143 行目の /Applications/XAMPP/xamppfiles/htdocs/Luracast/Restler/AutoLoader.php の未定義関数 Luracast\Restler\stream_resolve_include_path() の呼び出し
私は何を間違っていますか?
json - NodeRESTクライアントからGoogleAppsScriptを押すと奇妙なエラーが発生する
スプレッドシートから外部アプリにデータを取得するための簡単なGoogleAppScriptを設定しています。ブラウザまたはcurlからURLを開くと、適切なJSON応答が返されます。
自分の目で確かめてください、ここにURLがあります:
https://script.google.com/macros/s/AKfycbwUqrOsqQk4rk0lY97Wl4bRsHVk6_CMVPz3hGHeyc3H2ZCahCIY/exec
JSON応答を受け取る必要があります。ノードアプリにそのURLにリクエストを送信させ、JSON応答を解析してもらいたいのですが。RestlerとRequestの2つの異なるクライアントで試行していますが、両方で次のエラーが発生します。
何かお勧めはありますか?
database - restler API で共通のデータベース クラスを使用する
Crud の例から DB/PDO/MySQL.php をコピーし、そのディレクトリ構造を API ディレクトリの 1 つに配置しました (そして、データベースで使用するために変更を加えました)。
API 構造は myapi/artists (つまり、db は myapi/artists/DB/PDO/MySQL.php です) であり、Artists API クラスを含む index.php と Artists.php があります。
だから今、私は $this->dp = new DB_PDO_MySQL(); を呼び出します。アーティストクラスで、それはうまくいきます。
しかし、複数の API クラスでいくつかの一般的な db 関数を使用できるようにしたいのですが、各 API ディレクトリ内にない限り、db を機能させることができませんでした。
myapi/DB/PDO/mysql.php を vendor ディレクトリの下に置き、AutoLoader.php を編集して「myapi\DB\PDO」のエイリアスを追加しようとしましたが、うまくいきませんでした。
問題は、一般的な db コードを共有できるように構成するにはどうすればよいかということです。
myapi ディレクトリの下に複数の API サブディレクトリがあるとします (myapi は examples ディレクトリと同じレベルにあります)。