プログラミング

プロおよび熱狂的プログラマーのためのQ&A

11
RESTfulサービスでの部分更新のベストプラクティス
私は顧客管理システム用のRESTfulサービスを作成しており、レコードを部分的に更新するためのベストプラクティスを見つけようとしています。たとえば、呼び出し元がGETリクエストでレコード全体を読み取れるようにしたいとします。ただし、更新の場合、ステータスをENABLEDからDISABLEDに変更するなど、レコードに対する特定の操作のみが許可されます。(これよりも複雑なシナリオがあります) セキュリティ上の理由から、更新されたフィールドのみを含むレコード全体を発信者に送信してほしくありません(また、やり過ぎのように感じます)。 URIを構築するための推奨される方法はありますか?RESTブックを読むとき、RPCスタイルの呼び出しは不快に思われます。 次の呼び出しがID 123の顧客の完全な顧客レコードを返す場合 GET /customer/123 <customer> {lots of attributes} <status>ENABLED</status> {even more attributes} </customer> ステータスを更新するにはどうすればよいですか? POST /customer/123/status <status>DISABLED</status> POST /customer/123/changeStatus DISABLED ... 更新:質問を補足します。「ビジネスロジックコール」をREST APIに組み込むにはどうすればよいですか?これを行うための合意された方法はありますか?すべてのメソッドが本質的にCRUDであるとは限りません。いくつかは'のような、より複雑なsendEmailToCustomer(123) '、 ' mergeCustomers(123、456) '、 ' countCustomers() ' POST /customer/123?cmd=sendEmail POST /cmd/sendEmail?customerId=123 GET /customer/count
208 rest 


6
HTML / Javascriptのdivコンテンツを変更
いくつかのJavaScriptを使用した単純なHTMLコードがあります。 <html> <head> <script type="text/javascript"> function changeDivContent() { // ... }; </script> </head> <body> <input type="radio" name="radiobutton" value="A" onClick="changeDivContent()"> <input type="radio" name="radiobutton" value="B" onClick="changeDivContent()"> <div id="content"></div> </body> </html> コードスニペットを実行する結果を非表示スニペットを展開 「A」または「B」のいずれかのラジオボタンを選択してdivのコンテンツ(内部のhtml)を変更できるようにしたいのですが、div#contentにはJavaScript属性の「値」がないため、どのようにできるかを尋ねています終わり。
208 javascript  html 



11
gitリポジトリから古い履歴を削除するにはどうすればよいですか?
この特定のシナリオのようなものを見つけることができなかったと思います。 2007年半ばまでさかのぼって、500以上のブランチ、500以上のタグを含む、多くの履歴を持つgitリポジトリがあります。約19,500件のコミットが含まれています。2010年1月1日より前にすべての履歴を削除して、処理を小さく簡単にできるようにします(履歴の完全なコピーをアーカイブリポジトリに保存します)。 新しいリポジトリのルートになりたいコミットを知っています。しかし、そのコミットで開始するためにリポジトリを切り詰める正しいgit mojoを理解することはできません。私はいくつかの変種を推測している git filter-branch 移植を含むことが必要でしょう。また、個別に保持したい200以上のブランチを個別に処理してから、リポジトリにパッチを再度適用する必要がある場合もあります(私が行う方法を知っています)。 誰かがこのようなことをしたことがありますか?それが重要であれば、私はgit 1.7.2.3を持っています。

5
JavaScriptオブジェクトとJSON
JavaScriptオブジェクトとJSON文字列の基本的な違いを明確に理解したいと思います。 次のJS変数を作成するとします。 var testObject = {one: 1,"two":2,"three":3}; Q1。キー/プロパティ名は、引用符付き/なしの両方で有効ですか?(例"one" : 1) はいの場合、違いは何ですか? Q2:上記のオブジェクトをを使用して変換するJSON.stringify(testObject)と、元のJSオブジェクトとJSONの違いは何ですか? ほぼ同じだと思います。これについて詳しく説明してください。 Q3:JSON文字列を解析するために、以下の方法が推奨されますか? var javascriptObj = JSON.parse(jSonString);
208 javascript  json 

10
Android Googleマップjava.lang.NoClassDefFoundError:の解決に失敗:Lorg / apache / http / ProtocolVersion
GoogleマップAndroid SDK 11.6.2を使用しています(15.0.1も試しました)が、マップが表示される前にクラッシュします。マニフェストでAPIキーを既に確認しましたが、利用可能ですが、この問題は引き続き発生します。targetSDkのバージョンを28にしていますが、この問題が発生しますか? java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/ProtocolVersion; at el.b(:com.google.android.gms.dynamite_mapsdynamite@12848063@12.8.48 (100408-196123505):3) at ek.a(:com.google.android.gms.dynamite_mapsdynamite@12848063@12.8.48 (100408-196123505):4) at em.a(:com.google.android.gms.dynamite_mapsdynamite@12848063@12.8.48 (100408-196123505):51) at com.google.maps.api.android.lib6.drd.ap.a(:com.google.android.gms.dynamite_mapsdynamite@12848063@12.8.48 (100408-196123505):11) at dw.a(:com.google.android.gms.dynamite_mapsdynamite@12848063@12.8.48 (100408-196123505):16) at dw.run(:com.google.android.gms.dynamite_mapsdynamite@12848063@12.8.48 (100408-196123505):61) Caused by: java.lang.ClassNotFoundException: Didn't find class "org.apache.http.ProtocolVersion" on path: DexPathList[[zip file "/system/priv-app/PrebuiltGmsCorePi/app_chimera/m/MapsDynamite.apk"],nativeLibraryDirectories=[/data/user_de/0/com.google.android.gms/app_chimera/m/00000036/MapsDynamite.apk!/lib/armeabi-v7a, /data/user_de/0/com.google.android.gms/app_chimera/m/00000036/MapsDynamite.apk!/lib/armeabi, /system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:126) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at ad.loadClass(:com.google.android.gms.dynamite_dynamiteloader@12848063@12.8.48 (100408-196123505):25) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) at …


15
複数の空白を削除する
私は$row['message']MySQLデータベースから取得しており、同様にすべての空白を削除する必要があります\n \t。 $row['message'] = "This is a Text \n and so on \t Text text."; 次のようにフォーマットする必要があります: $row['message'] = 'This is a Text and so on Text text.'; 私は試した: $ro = preg_replace('/\s\s+/', ' ',$row['message']); echo $ro; しかし、それは削除されません\nか\t、1つだけのスペースを。誰か私にそれを行う方法を教えてもらえますか?

9
バッチファイル:部分文字列が文字列内にある(ファイル内にない)かどうかを確認します
バッチファイルに文字列がありますabcdefg。bcd文字列に含まれているかどうかを確認したい。 残念ながら、私が見つけているすべての解決策は、部分文字列の文字列ではなく、部分文字列のファイルを検索しているようです。 これに対する簡単な解決策はありますか?

27
selectステートメントで日時列をUTCから現地時間に変換する
いくつかのSQL選択クエリを実行していますが、UTC日時列を現地時間に変換して、クエリ結果に現地時間として表示したいと考えています。この変換をコードで行うのではなく、データベースに対して手動でランダムなSQLクエリを実行する場合に注意してください。
208 sql  sql-server 

4
Pythonで同等のe.printStackTrace
print(e)(eは例外です)発生した例外を出力することは知っていますが、Javaに相当するpythonでe.printStackTrace()、例外を発生した行まで正確に追跡し、そのトレース全体を出力するpythonを見つけようとしていました。 誰かe.printStackTrace()がPython の同等のものを教えてくれませんか?

5
リストのすべての要素が条件に一致するかどうかを確認するにはどうすればよいですか?
20000のようなリストで構成されるリストがあります。各リストの3番目の要素をフラグとして使用します。少なくとも1つの要素のフラグが0である限り、このリストでいくつかの操作を実行したいのですが、次のようになります。 my_list = [["a", "b", 0], ["c", "d", 0], ["e", "f", 0], .....] 最初はすべてのフラグが0です。whileループを使用して、少なくとも1つの要素のフラグが0かどうかを確認します。 def check(list_): for item in list_: if item[2] == 0: return True return False がcheck(my_list)返された場合はTrue、リストの作業を続けます。 while check(my_list): for item in my_list: if condition: item[2] = 1 else: do_sth() 実際、繰り返し処理を行っているときにmy_listの要素を削除したかったのですが、繰り返し処理を行っているため、アイテムを削除することはできません。 元のmy_listにはフラグがありませんでした: my_list = [["a", "b"], ["c", "d"], …


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