タグ付けされた質問 「api」

アプリケーションプログラミングインターフェイス(API)は、ソフトウェアが他のソフトウェアで使用されることを意図した仕様です。

1
Open Data Protocol(odata)は開発コミュニティに広く受け入れられていますか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 4年前に閉鎖されました。 編集:あなたがodataに精通していない場合、ここに行きます。 この技術を学ぶ価値があるのか​​、それが理解できないものなのかを判断しようとしています。 前提は興味深いものであり、APIの開発者としては、APIを使用する開発者により多くの柔軟性を提供する良い方法のようです。 残念ながら、過去数年間、Open Data Protocolに関する「バズ」はあまり見られないので、一度習得したら、その可能性があるかどうかを測定しようとしています。 前もって感謝します。

2
Javaコレクション(java.util)のパッケージ構造-Iterableがjava.langにあるのはなぜですか?
以下の図のように、interfaceを除いてIterable、残りのすべての構成要素(interface / class / abstract class)は同じパッケージにありますjava.util パッケージにIterable座っているのはなぜjava.langですか? 注:意図は、Javaプログラミングのパッケージングの側面を理解することです。


2
ソースコードでAPIキーを非表示にする最良の方法
アプリケーション、特にac#.NETアプリケーションでプライベートAPIキーを保護する方法についてのアイデアが必要です。 まず、ソースコードに何かを隠すことは理論的に不可能であることを理解しているので、別のアイデアを思いつきましたが、それがどれほど妥当かはわかりません。とにかく、なんらかの方法でWebサーバーと通信して秘密鍵を検証し、アプリケーションに戻って正当なハンドシェイクであることを確認することは可能でしょうか? 作業する2つのキーがあります。公開キー(名前が示すように、プライベートと同じように扱う必要はありません)と、他から保護されている必要があるプライベートキーです。 私がこれをどのように行うことができるかについてのアイデアは大歓迎です。
12 c#  api  authentication 

1
RESTful APIはどの程度分離すべきですか?
以前にRESTful APIを作成したことはありませんが、RESTful APIをどの程度分離すべきか疑問に思っていますか? たとえば、名前、住所、電話番号、メールアドレス、言語などを持っている顧客がいるとしましょう。 個々のフィールドを更新する方法(アドレスの更新、電子メールアドレスの更新など)があるのは理にかなっていますか、それとも顧客全体に対して単一の更新があり、各フィールドはオプションですか?
12 api  rest 

2
RESTful APIでコマンドパターンを実装する
私はHTTP APIの設計を進めており、できればできるだけRESTfulにするようにしています。 機能がいくつかのリソースに広がるアクションがいくつかあり、いつか元に戻す必要があります。 これはコマンドパターンのように思えますが、どのようにリソースにモデル化できますか? DepositActionのようなXXActionという名前の新しいリソースを紹介します。 POST /card/{card-id}/account/{account-id}/Deposit AmountToDeposit=100, different parameters... これにより、実際に新しいDepositActionが作成され、そのDo / Executeメソッドがアクティブになります。この場合、201 Created HTTPステータスを返すことは、アクションが正常に実行されたことを意味します。 後でクライアントができるアクションの詳細を確認したい場合 GET /action/{action-id} Update / PUTはここでは関係ないため、ブロックする必要があります。 そして、アクションを元に戻すために、私は DELETE /action/{action-id} 実際に関連オブジェクトのUndoメソッドを呼び出し、そのステータスを変更します。 やり直しが1回だけで満足だとしましょう。やり直す必要はありません。 このアプローチは大丈夫ですか? 落とし穴、それを使用しない理由はありますか? これはクライアントのPOVから理解されていますか?

3
@deprecatedのような実験的または不完全なAPIを文書化する方法は?
メソッドまたはAPIがコードベースにあるが、実装が完全ではないか、変更される可能性が高いため、使用すべきではないという意味で、「非推奨」と似ているが異なる用語はありますか?(ええ、私は知っています、これらの方法は公開すべきではありません、やだやだやだ。自分の状況を作り出したのではなく、それを最大限に活用しようとしています。) 人々は何を提案しますか?実験的、不完全、他の何か? まだ流動的なこのAPIのjavadocドキュメントを構築している場合、@ deprecatedタグを使用する必要がありますか、それともより良い規則がありますか?私にとって@deprecatedは、このAPIが古く、新しい優先メカニズムが利用可能であることを意味します。私の状況では、代替手段はありませんが、APIの一部のメソッドは終了していないため、使用しないでください。この時点では、それらを非公開にすることはできませんが、ドキュメントに明確な警告を記載したいと思います。

2
Java Spring for Beginnerを使用したRESTfulサービスの構造
私はJava Web開発スキルの点で比較的新しいです。APIについて私が少ししか理解していないことから、RESTfulサービスの良い候補になると思うプロジェクトがあります。私はこれがどのように構成されているのかを詳しく説明しようとしていますが、Google検索やすでに持っている資料を読むという点では実際にはどこにも行きません。この投稿が、このトピックに関する私の知識と仮定の観点から、いくつかの検証やリダイレクトをもたらすことを望んでいます。 私の現在の仮定は、RESTfulサービスが次の構造を持つことです。 データベースデータ(SQL)。 ORM(私はCPOと呼ばれる比較的人気のないORMを使用していますが、ほとんどの人はこれをHibernateに置き換えるだけです)。 ORMと通信してデータを取得するメソッドを持つJavaマネージャークラス クラス/クラスはハンドルがマッピングおよび使用を要求することをAのJavaコントローラ@ResponseBodyに指示する/ HTTP動詞を介してデータの処理方法のURLとアクションを処理(http://mysite.com/computers/dellがあるかもしれないGET単語「デル」とのリクエストURLは、Dellコンピューターに関する情報のJSON配列を返すパラメーターです)。 このサービスは、Spring Bootで作成するか、何らかの形で独立して他のアプリケーションから独立させる必要があります。 上記が正しいと仮定すると、(非常に基本的なレベルで)データを消費および使用するために任意のアプリケーションが使用できるRESTfulサービスがあります。 そこで、Webアプリケーションを作成するとします。コンピューターハードウェア情報に関するWebアプリを作成しており、Springを使用してこのWebアプリを作成しているとします。私の仮定は次のとおりです。 私は、JSPとしてHTML、CSS、およびJavaScriptインクルードを持つJSPとして多数のビューを持っています。JavaScriptは、必要に応じてこのアプリケーションのコントローラーへのAJAX呼び出しを処理します(以下)。 このWebアプリには、アプリのURLリクエストとルーティングを処理する独自のコントローラーもあり、コントローラーは、たとえば、ModelAndViewオブジェクトまたはそれらの行に沿ったものを使用して、RESTfulサービスのコントローラーと「通信」し、渡されるデータを取得します、表示するためにそのデータをビュー(Javascript、JSPなど)に戻します。 私は正しい道にいますか?RESTfulサービスには認証の側面もあることは理解していますが、概念的にはまだありません(そして、私のプロジェクトはプライベートネットワークで使用されるため、現時点ではセキュリティは優先されません)。 洞察、批判、知識、フィードバック、または明確化は大歓迎です。

3
JSONキーでハイフンを使用することは悪い習慣ですか?
ハイフン(ケバブケース)を使用するJSONキーへのアクセスに関する多くの質問が表示されますが、今ではキーにキャメルケースまたはsnake_caseを使用するべきかどうか疑問に思っています。言語間で移植すると、ハイフンが複雑なマッピングを作成することもあります。一部のJSONデシリアライズライブラリがこれらのキーをcamelCaseスタイルに変換するのを見てきました。 例: var something = { "some-value": 'thing' } 対 var something = { "someValue": 'thing', "some_other_value": 'thing_two' }

4
MVCおよびRESTful APIサービス
MVCは非常に単純です。モデル、コントローラー、ビューがあります。Webサイトを作成すると、クライアントがRESTキーワード要求をサーバーに送信するときにすべてがまとめられます->サーバーは要求されたURLをコントローラーアクションに一致させます->データ収集/処理のためにモデルを呼び出し、結果を取得します->そして、結果をHTMLページ(ビュー)としてクライアントに返します。 純粋なRESTful API Webサービスについて話している場合はどうなりますか?次に、クライアントはRESTキーワード要求をサーバーに送信します->サーバーは要求されたURLをコントローラーアクションに照合します->データ収集/処理のためにモデルを呼び出し、結果を取得して->戻ります結果をJSONでクライアントに返します。以前と同じですが、「ビュー」はありません...むしろ、生成されたJSONは「ビュー」と考えることができます。ある意味では、MVCのMC部分のみを使用しています。それはどのように行われるべきですか?または、MVCの代わりにAPIのみのサービスに適した他のパターンはありますか?

7
列挙に特別な値「ALL」を含めることは良い習慣ですか?
私はマイクロサービス環境で新しいサービスを開発しています。これはRESTサービスです。簡単にするために、パスが/ historyBooksであるとしましょう そして、このパスのPOSTメソッドは、新しい履歴ブックを作成します。 歴史書が歴史の1つ以上の時代をカバーしていると仮定しましょう。 簡潔にするために、人間の歴史の次の時代しかないと仮定しましょう。 古代 ポストクラシック モダン 私のコードでは、それらをで表現したいと思いenumます。 メソッドの本体(ペイロード)はJSON形式であり、フィールド名を含める必要がありますeras。このフィールドは、eraこの本で扱う値のリストです。 本体は次のようになります。 { "name": "From the cave to Einstein - a brief history review", "author": "Foo Bar", "eras": ["Ancient", "Post Classical", "Modern"] } この特定のサービスでは、ビジネスロジックは次のとおりです。 入力に時代が指定されていない場合、この本はすべての時代を網羅していると見なされます。 APIレビューでは、すべての時代が網羅されていることを明示的に示すために、時代の列挙に 別の値を含めることを提案しましたALL。 長所と短所があると思います。 長所: 明示的な入力 短所: リスト内の2つの項目が提供されている場合、と言うALLとAncient-アプリケーションから取得されますでしょうか?これでALL他の値が上書きされるはずですが、それは新しいビジネスロジックです。 特定の時代を対象とする書籍のクエリを実行する場合、すべての時代を対象とする書籍をどのように表現しますか?場合ALLも(同じロジックを使用して)出力に使用され、それが解釈する消費者の責任だALLとは["Ancient", "Post Classical", "Modern"]。 私の質問 新しいALLものを持つことは、まったく持たないことよりも混乱を引き起こすと思います。 どう思いますか?このALL値を追加しますか、それなしでAPIを保持しますか?
11 rest  api  json  enum 

5
Javaのブールクラス-列挙型ではないのはなぜですか?
ブールクラスは列挙型として実装するのに理想的な候補であるように思えます。 ソースコードを見ると、ほとんどのクラスは静的メソッドであり、変更せずに列挙型に移動できますが、残りは列挙型としてはるかに単純になります。オリジナルを比較(コメントと静的メソッドは削除): public final class Boolean implements java.io.Serializable, Comparable<Boolean> { public static final Boolean TRUE = new Boolean(true); public static final Boolean FALSE = new Boolean(false); private final boolean value; public Boolean(boolean value) { this.value = value; } public Boolean(String s) { this(toBoolean(s)); } public boolean booleanValue() { return value; …
11 java  api  source-code 

4
議会地区を決定するためのAPIはありますか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 4年前に閉鎖されました。 ユーザーが提供している住所に基づいて議会地区を決定したいと考えています。これにより、ユーザーが自分で検索する必要がなくなります。 この種のAPIは存在しますか? 注意 見つけようとする試みを通して、私はこれらに出会っただけです: http://www.govtrack.us/developers/api (ただし、住所または郵便番号の送信方法がわからない) 次のリソースがAPIで利用可能です ... 1973年以降の米国議会(第93回議会)での法案と決議。 ...参加と撤回の日付を含む、共催を示す(請求書、個人)ペア。 ...建国以来の議員と米国大統領。 ...議会の議員と米国大統領が任期を務める。各任期は選挙に対応します。つまり、下院の各任期は2年(1回の「議会」)、大統領として4年、上院では6年(3回の「議会」)をカバーします。 ... 1789年以来、米国議会での投票の投票。人々の投票方法は、Vote_voter APIからアクセスできます。 ... 1789年以来、米国議会でのロールコール投票での投票方法。投票APIを参照してください。投票フィールドでフィルタリングして、特定の投票の結果を取得します... http://www.opencongress.org/api (地区ではなく議会情報を検索する方法のようです) このAPIは、OpenCongressのすべてのデータへの構造化されたアクセス、公式請求書情報からニュースやブログの報道、請求書に対するユーザー生成の票など、プログラマーに構造化されたアクセスを提供します。 このAPIはデフォルトでXMLを返します。すべてのクエリはJSONも返すことができます... https://groups.google.com/forum/?fromgroups=#!topic/opendems-discuss/CeKyi_aANaE (同様の質問、解決策なし) 私はOpen Demsに目を通し、この時点で何が公開され、何が公開されていないかを見てきました。私は海外の民主党員と仕事をしており、彼らのサイトに研究室の資料を使用することに興味があります。 私はすぐにPrecinct APIに目を通しました。これは、必要なものよりも多くの機能を備えています。理想的なリソースは、住所を少なくともCDに変換する方法です(州の地区データを取得することも良いでしょう)。これにより、先月のNY26レースのようなレースでDAのメンバーシップが違いを生みやすくなります。 。 更新 私はgovtrack.usウェブサイトのソースを見ていますが、「doGeoCode」機能が役に立つかもしれません。 view-source:http://www.govtrack.us/congress/members 誰も提案がなければ、私は彼らがしていることをやめようとします。
11 api 


4
文書化されていない機能はどのように発見されますか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 4年前に閉鎖されました。 文書化されていない/プライベート APIを どのように見つけるのでしょうか? 例Appleが文書化されていない/プライベートAPIを、駅再生、Windowsの電話7、Win32のカーネル、WindowsのAPI、隠されたコールバックなど、... ハッカーは、プライベートおよびドキュメント化されていない機能について調べるためにどのツールを使用しますか? APIドキュメントで通常説明されている秘密を明らかにするプライベートAPIとリバースエンジニアリング技術を掘り下げた人々の経験についてどこで読むことができますか? ありがとう、 A

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.