問題タブ [sharp]
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.
node.js - nodejsはリモートサーバーから画像のサイズを変更して保存します
ノードjsは、リモートサーバーから画像のサイズを変更して保存します。
こんにちは、ローカルに保存せずに画像のサイズを変更してから保存するにはどうすればよいですか。次のコードを実行すると、「エラー: 入力バッファにサポートされていない画像形式が含まれています」というエラーが表示されます。
mongodb - 2 人のユーザーが同じロール番号を取得しないようにする方法は?
私のアプリケーションと問題について少しお話しさせてください。このアプリケーションは、組織によって開始された特定のコースに学生を登録するために使用されます。学生は、他の情報に加えて、フォームに次の情報を提供します。
- 利用可能なコースからのコース
- 彼の写真
フォームが正常に送信された後、彼は入院カードを印刷できます。
管理者向け:
- 彼は好きなだけコースを作成できます
- 彼はコースの可用性を切り替えることができます
- 彼は
start
コースのロール番号をどこに置くかを選択できます - 彼は
current
コースのロール番号を変更できます
学生が送信をクリックした後に実行される手順は次のとおりです。
course_id
フォームから を取得し、そのコースのロールcurrent
番号を取得しますcurrent
パスにファイル名としてロール番号を付けて画像を保存しますcourse_name/batch/roll_number.(png|jpg)
- 画像が正常に保存された場合は画像を取得し、それ以外の場合は拒否します
- 画像のサイズを変更して既存の画像を上書きし、画像を削除してサイズ変更に失敗した場合は拒否します
- 生徒のフォームを
forms
コレクションに保存する - コレクション
current
内のそのコースのロール番号を増やしますcourses
- フォーム データと画像の base64 文字列を含む応答を送信します (入院カードで使用されます)
問題:
問題は、ユーザーが同じロール番号を使用するため、ほぼ同時にフォームを送信すると、重複するロール番号が生成される可能性があることcurrent
です。コレクションroll_number
から来ているため、フォームを単純に自動インクリメントできないため、この問題を解決できません。courses
私のデータベースは次のようになります。
私は使っている:
画像を保存するための multer : https://github.com/expressjs/multer
画像のサイズ変更用のシャープ: https://github.com/lovell/sharp
リクエストを処理するためのexpressjs
この重複の問題を解決するにはどうすればよいか教えてください。