Apidog

オールインワンのAPI開発プラットフォーム

API設計

API仕様書生成

API設計

API Mock

APIテスト自動化

無料登録
Home / 操作ガイド / 最新ガイド:Postmanで現在時刻のタイムスタンプを渡す

最新ガイド:Postmanで現在時刻のタイムスタンプを渡す

PostmanでAPIをテストする場合は、現在時刻のタイムスタンプを渡すのが非常に一般的なタスクです。それでは、Postmanで現在時刻のタイムスタンプを渡すには、どうしたらいいですか?本文では、Postmanで現在時刻のタイムスタンプを渡す方法を皆さんに紹介します。

PostmanでAPIをテストする場合は、現在時刻のタイムスタンプを渡すのが非常に一般的なタスクです。それでは、Postmanで現在時刻のタイムスタンプを渡すには、どうしたらいいですか?本文では、Postmanで現在時刻のタイムスタンプを渡す方法を皆さんに紹介します。

💡
Apidogという便利なAPI管理ツールを使ってタイムスタンプを渡すことが簡単です。

パラメータ値で直接データジェネレータからタイムスタンプを選択したり、{{$timestamp}}を入力したりして、より簡単にタイムスタンプを渡せます。また、PostmanのScriptにも完全に対応しています。
button

タイムスタンプを渡す必要があるのはなぜ?

PostmanなどのAPIテスト用ツールを使って、APIをテストする場合は、タイムスタンプを渡す必要がある場合がよく見られますね。それはなぜでしょうか?APIテスト時にタイムスタンプを渡す理由は主に以下の3つが考えられます。

  1. リクエストの一意性を担保する
    APIにタイムスタンプを付与することで、完全に同一のリクエストが重複して送信されるのを防ぐことができます。サーバー側で適切にリクエストを識別し、正しく処理できるようになります。
  2. タイムスタンプを利用したデータ検証
    一部のAPIではタイムスタンプに基づいた検証が行われる場合があります。例えば、タイムスタンプが一定時間以内であること、タイムスタンプの順序が正しいことなどをチェックし、不正なリクエストを排除できます。
  3. 監査ログにタイムスタンプを記録
    APIへのアクセスを監視したり、セキュリティ上の理由からリクエストのタイムスタンプを記録する必要がある場合があります。後々トレースバックが可能となり、課題の特定や分析に役立ちます。

一般的にタイムスタンプは、リクエストに関する情報をサーバー側で管理したり、データの整合性や信頼性を確保したりするために利用されています。PostmanでタイムスタンプをAPIに渡すことで、本番と同等の環境でテストを行えるようになります。

Postmanとは

Postmanは、API(Application Programming Interface)開発とテストのための人気のあるツールです。Postmanを使用すると、開発者はHTTPリクエストを作成し、APIエンドポイントに送信することができるので、APIの動作をテストしたり、リクエストとレスポンスのデータを確認したりできます。

初心者向け:Postmanの基本的な使い方を
Postmanは、APIテストなどを行うための定番のツールになります。API戦略を実施する場合は、Postmanを利用することで、その効率性を大幅に向上できます。そこで、本文では、基本的なPostmanの使い方を皆さんに紹介して、Postmanを全く使ったことがないユーザーでも、本文の内容を参照して、Postmanを使いこなすことができると思います。

また、Postmanは、機能豊富なインターフェースを提供し、リクエストの作成や編集、ヘッダーの管理、パラメータの設定、レスポンスの確認などを行うことができます。

Postman

Postmanで現在時刻のタイムスタンプを渡す

それでは、PostmanでAPIをテストする際、どのように現在時刻のタイムスタンプを渡せば良いのでしょうか?次は、詳細なガイドを皆さんに紹介します。

内蔵変数で現在時刻のタイムスタンプを取得して渡す

Postmanであるコレクションを開き、リクエストを選択します。このリクエストには timestamp というパラメータがある場合、Postmanが提供してくれる内蔵変数提 {{$timestamp}}を使って、現在時刻のタイムスタンプを取得します。

具体的には、エンドポイントのURLの後に、次のようにパラメータを定義することができます:

timestamp={{$timestamp}}
内蔵変数で現在時刻のタイムスタンプ

そして、リクエストを送信して、コンソールで実際のリクエスト情報をプリントすると、現在時刻のタイムスタンプが渡されることがわかりました。

Pre-request Scriptで現在時刻のタイムスタンプを取得して渡す

Postmanで内蔵変数以外、Scriptを使って現在時刻のタイムスタンプを取得することも可能です。Scriptでタイムスタンプを取得すると、それを環境変数かグローバル変数に保存することができます。そして、リクエストのパラメータでこの変数を利用すれば良いのです。

Scriptで次にように、Dateオブジェクトを利用して、タイムスタンプを取得できます:

// ミリ秒単位のタイムスタンプを取得
let timestamp = new Date().getTime();

console.log(timestamp);
Pre-request Scriptで現在時刻のタイムスタンプを取得

上記のコードは、Dateオブジェクトを作成して、getTime()メソッドを利用して当該オブジェクトのタイムスタンプを取得します。返されたタイムスタンプは、1970 年1月1日0時(UTC)から現時刻までのミリ秒数になります。秒単位のタイムスタンプを取得するには、Math.floorMath.roundメソッドを利用することができます。

// 秒単位のタイムスタンプを取得
var timestampInSeconds = Math.floor(new Date().getTime() / 1000);

console.log(timestampInSeconds);
Pre-request Scriptで現在時刻のタイムスタンプを取得

タイムスタンプを取得すると、次のScriptを利用してそれを環境変数に保存することができます:

let timestamp = new Date().getTime();

pm.environment.set('current_timestamp', timestamp);

環境では、current_timestampというフィールドがない場合は、Postmanはこの変数を自動的に作成して、値を記入します。

タイムスタンプを環境変数として保存

Apidogでより便利にタイムスタンプを渡す

APIテストする際、タイムスタンプを渡す必要がある場合、Apidogという便利なツールを使ったら、より簡単に渡すことができます。

button

下図のように、パラメータ値で「魔法の杖」アイコンをクリックして、データジュネレータをクリックして、timestampを選択することもできますし、

Apidogのデータジュネレータでタイムスタンプを生成

パラメータ値に{{$timestamp}}を入れて内蔵変数を入力することで、簡単に渡すこともできます。

Apidogの内蔵変数でタイムスタンプを渡す

また、Apidogは、PostmanのScriptにも完璧の互換できますので、「前処理」のカスタムScriptを利用して、Postmanと同じなScriptを利用して、タイムスタンプを取得したり、渡したりすることも可能です。

ApidogのカスタムScriptを利用してタイムスタンプを取得
button

まとめ

この記事では、PostmanでAPIテスト時に現在時刻のタイムスタンプを渡す方法について詳しく解説しました。APIテスト時に様々な原因でタイムスタンプを渡すことが必要となります。Postmanでは、内蔵変数かPre-request Scriptを使って、現在時刻のタイムスタンプを取得し、リクエストに渡すことができます。

より簡単な方法といえば、Apidogという便利なAPI管理ツールを使うのがおすすめです。Apidogを使うことで、パラメータ値で直接データジェネレータからタイムスタンプを選択したり、{{$timestamp}}を入力したりして、より簡単にタイムスタンプを渡せます。また、PostmanのScriptにも完全に対応しています。

タイムスタンプを適切に扱うことは、APIテストの質を高め、本番環境に近い状態でテストを行うために重要です。PostmanやApidogなどのツールを上手く活用し、効率的でより現実的なAPIテストを実施しましょう。

Apidogのニュースレターを購読する

今すぐ購読すると、いつでもApidogから更新情報と最新観点を手に入れることができます。