問題タブ [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.
caching - Luracast restler -- routes.php キャッシュ
Luracast restler のルート キャッシュで問題が発生しました。たとえば、次の 2 つの URL があります。
/api/service/resale/getmapinfo
/api/service/precon/getmapinfo
それらは、対応する 2 つのクラスで動作します。
- 再販サービス
- PreconService
最初の URL に到達すると、最初のクラスのメソッドの情報がキャッシュに表示されます。
次に、2 番目の URL に到達しようとすると、restler がキャッシュを読み取り、そこに最初のクラスのルートのみが見つかるため、404 エラーが発生します (2 番目のクラスに関する情報がないため)。
さらに、最初に(意図的に)間違ったURLにアクセスすると、routes.php
キャッシュは空の配列で保存されます。次に、到達しようとするすべての URL で 404 を取得します。
基本的に、コードで見られるのは、キャッシュ システムがクラスに基づいていないことですが、最初に URL に到達したときに 1 回だけ書き込まれる共通のキャッシュが 1 つあります。アドバイスしてください、それは私が間違っていることですか、それともレスラーの間違った動作ですか?
php - Restler は常に not found を返します
私はここで立ち往生しています.wampですべてを実行し、正常に動作しますが、APIをcentosボックスにインストールしようとすると、常に「見つかりません」というエラーが表示されます.
他に何をすべきかわからない!
say/hello の例でさえ失敗します...
restler を処理するための apache 要件の仕様はありますか?
何かアイデアはありますか?, それは一種の緊急です
say.php:
index.php
.htaccess
エラー:
見つかりません 要求された URL /mylocation/say/hello がこのサーバーで見つかりませんでした。
これが基本的にすべてのコードです。jsonpformat が邪魔をしている可能性があると思われる場合は、そのコードをここに貼り付けることができます。
次のように URL を入力するとhttp://myhost/mylocation/
、json エラーが発生します。
入力http://myhost/mylocation/say/hello
すると、見つからないというエラーが表示されます。.htaccess が機能していないようです。
[編集]
このようにURLに「index.php」を追加するとhttp://myhost/mylocation/index.php/say/hello
うまくいくようですが、このままにしておくことはできません...
私はこれを取得しました: index.php が URL に含まれていない場合、Restler は 404 ステータス コードを返します。
restler - Restler は、Index.php の有無にかかわらず常に見つかりませんでした
現在、RestKit を使用して、Api.guessthedistance.com にある restler で作成した Api と通信する iOS アプリを作成しています。
現時点では、Restler の例はどれも私の API と連携して動作せず、どちらも 404 エラーを返すだけです。.htaccess ファイルと apache conf ファイルを書き直そうとしましたが、うまくいきませんでした。
これを修正するにはどうすればよいですか?
Apache 設定ファイル
.Htaccess ファイル
php - エスケープされたすべての二重引用符文字を返すレスラー?
Kさん、こんな感じです。二重引用符をエスケープしない方法を見つけようとしています。これはレスラーがやっていると思います...しかし、レスラーコードで何を変更する必要があるかについてのドキュメントやヒントを見つけることができませんでした。str_replace('"', '*', jason_encode...) を実行すると、星付きで正常に表示されます...したがって、json_encodeが台無しにすることはありません...:
私の出力はこれです:
データがコードと一致しないことはわかっています...しかし、そのすべてについて私を信頼してください。要点は...二重引用符がエスケープされていることです。どうすればこれを止めることができますか?
exception-handling - Restler フレームワークの例外処理
アプリケーションで例外処理を作成するにはどうすればよいですか。私はレスラーフレームワークを使用しています
php - レスラー複数ルート
複数のルートに問題があり、そのうちのいくつかは機能していません。
たとえば
URLの場合は機能しません/fetch/start/1/limit/2
が、次の場合は機能します /fetch/start/1/2
そして
/fetch/:id/
オーバーライド します/fetch/lazyload/:lazy
動作しないため/fetch/lazyload/true
、認識されたパターンが返されます /fetch:id => lazyload
何か足りないのですか、それともこの種のマッピングは不可能ですか?
ありがとうございました。
php - Restler:内部アクション
アクションの実行中にRESTアクションを実行する方法はありますか?たとえば、実行するGET /index.php/book/1
と、次のように表示される場合があります。
しかし、私がやりたいのは、上記のオブジェクトを返す前に、実行しGET /index.php/user/4
て、最終結果が次のようになるようにすることです。
restler - 最後のスラッシュに応じて異なる形式を返すレスラー
mod_rewrite で restler を使用し、「Accept」HTTP ヘッダーを使用して正しいリソース表現を返しています。実稼働環境で「Accept: application/json」を使用してリクエストを行う場合:
http://example.com/site/collection/1/応答は正しく、json 形式になっています。
http://example.com/site/collection/1応答は正しいですが、xml 形式になっています。
私の開発環境では、これらのリクエストは両方とも json でフォーマットされた同じ結果を返し、それが私が望む方法です。両方の環境で、.htaccess ファイルが配置されています。
apache - RewriteCond: 不明なフラグ 'QSA'
Restlerを構成するときは、次の書き換えルールを作成することをお勧めします。
これを REST ディレクトリのルートにある .htaccess ファイルに入れましたが、このルールが実行されると 500 サーバー エラーが発生します。Apache エラー ログのエラー メッセージは次のとおりです。
favicon.ico ファイルがないことは無視できると思いますが、「unknown flag 'QSA'」というエラーが気になります。書き換えルールについてはほとんど知らないので、助けていただければ幸いです。
Restler に精通している人のために、私は 3.0.0rc2 を使用しています (それが重要な場合)。また、index.php への明示的な呼び出しを使用すると、404 JSON エラー応答 (肯定的な改善) が返されるほどうまく機能しますが、上記のように、書き換えルールに依存すると、500 サーバー エラーが返されるだけであることも指摘しておく価値があります。 :
php - Restler3-パラメーターのデフォルト値はパラメーターを渡す機能をブロックします
RestlerWebサイトにある「Say」クラスの例から派生した非常に単純なクラスがあります。それは次のとおりです。
「hi」関数には$to変数のデフォルト値がないため、主に次のように機能します。
戻り値
こんにちはジャック!
素晴らしい。問題は、「hello」関数や「nothing」関数などのデフォルト値がある場合、パラメーターを渡すことができなくなったように見えることです。
どんな助けでも大歓迎です。
ちなみに、 "hi"でパラメーターを使用しない場合($を何かに設定する必要があります)、404エラーも返されることにも気づきました。それが予期された動作であるかどうかはわかりませんが、この種のエラーに対する間違ったエラーメッセージのようです。