> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XUserGetTokenAndSignatureUtf16Async

> XUserGetTokenAndSignatureUtf16Async

# XUserGetTokenAndSignatureUtf16Async

対象 URL への HTTPS 呼び出しの認可に必要な X-token と Signature を非同期に取得する API です。タイトルの [パートナー センターのシングル サインオン ページ](/services/xbox-services/fundamentals/s2s-auth-calls/custom-service-config/single-sign-on/live-single-sign-on) で対象 URL に紐付けられている証明書利用者 (Relying Party) が存在する場合、X-token と Signature を返します。要求を行う前に、[API の Results バージョン](/reference/system/xuser/functions/xusergettokenandsignatureutf16result) から取得した X-token と Signature の値を HTTPS 呼び出しの Authorization ヘッダーと Signature ヘッダーに追加してください。

## 構文

```cpp theme={null}
HRESULT XUserGetTokenAndSignatureUtf16Async(  
         XUserHandle user,  
         XUserGetTokenAndSignatureOptions options,  
         const wchar_t* method,  
         const wchar_t* url,  
         size_t headerCount,  
         const XUserGetTokenAndSignatureUtf16HttpHeader* headers,  
         size_t bodySize,  
         const void* bodyBuffer,  
         XAsyncBlock* async  
)  
```

### パラメーター

*user*   \_In\_\
Type: XUserHandle

Web 要求の対象ユーザーへのハンドルです。

*options*   \_In\_\
Type: [XUserGetTokenAndSignatureOptions](/reference/system/xuser/enums/xusergettokenandsignatureoptions)

ユーザー トークンと署名を取得するためのオプションです。

*method*   \_In\_z\_\
Type: wchar\_t\*

Web 要求のメソッド タイプ (Unicode) です。

*url*   \_In\_z\_\
Type: wchar\_t\*

HTTPS 要求の対象 URL です。HTTPS 要求には完全な URL 文字列を使用してください。URL を省略しないでください。

*headerCount*   \_In\_\
Type: size\_t

*headers* パラメーター内のヘッダーの数です。

*headers*   \_In\_reads\_opt\_(headerCount)\
Type: [XUserGetTokenAndSignatureUtf16HttpHeader\*](/reference/system/xuser/structs/xusergettokenandsignatureutf16httpheader)

Web 要求のヘッダーです。

*bodySize*   \_In\_\
Type: size\_t

*bodyBuffer* パラメーターのバッファーのサイズです。

*bodyBuffer*   \_In\_reads\_bytes\_opt\_(bodySize)\
Type: void\*

Web 要求の本文が格納されるバッファーです。

*async*   \_Inout\_\
Type: XAsyncBlock\*

呼び出しの状態のポーリングと呼び出し結果の取得に使用する [XAsyncBlock](/reference/system/xasync/structs/xasyncblock) です。

### 戻り値

Type: HRESULT

成功した場合は S\_OK を返します。それ以外の場合はエラー コードを返します。
エラー コードの一覧については、[エラー コード](/reference/errorcodes) を参照してください。

## 解説

XUserGetTokenAndSignatureUtf16Async 関数は、[XUserGetTokenAndSignatureOptions](/reference/system/xuser/enums/xusergettokenandsignatureoptions) 列挙型の引数を使用して、Web 要求用の Unicode X-token と Signature を非同期に取得します。

XUserGetTokenAndSignatureUtf16Async の呼び出し結果を取得するには、[XUserGetTokenAndSignatureUtf16Result](/reference/system/xuser/functions/xusergettokenandsignatureutf16result) を呼び出します。

XUserGetTokenAndSignatureUtf16Async の呼び出し結果を保持するために必要なバッファー サイズを取得するには、[XUserGetTokenAndSignatureUtf16ResultSize](/reference/system/xuser/functions/xusergettokenandsignatureutf16resultsize) を呼び出します。

## 要件

**ヘッダー:** XUser.h

**ライブラリ:** xgameruntime.lib

**サポートされているプラットフォーム:** Windows、Steam Deck、XBOX One ファミリ本体および XBOX Series 本体

## 概念ドキュメント

* [WinHTTP の概要](/build/console-features/networking/web-requests/intro-winhttp)
* [プレイヤーのサインインを実装する](https://learn.microsoft.com/gaming/gdk/docs/services/playfab-integration/gdk-playfab-player-sign-in-steps)

## 関連項目

[XUser](/reference/system/xuser/xuser_members)

[XUserGetTokenAndSignatureUtf16Result](/reference/system/xuser/functions/xusergettokenandsignatureutf16result)

[XUserGetTokenAndSignatureUtf16ResultSize](/reference/system/xuser/functions/xusergettokenandsignatureutf16resultsize)


## Related topics

- [XUserGetTokenAndSignatureUtf16Result](/ja-jp/reference/system/xuser/functions/xusergettokenandsignatureutf16result.md)
- [XUserGetTokenAndSignatureUtf16ResultSize](/ja-jp/reference/system/xuser/functions/xusergettokenandsignatureutf16resultsize.md)
- [XUserGetTokenAndSignatureUtf16Data](/ja-jp/reference/system/xuser/structs/xusergettokenandsignatureutf16data.md)
- [XUserGetTokenAndSignatureUtf16HttpHeader](/ja-jp/reference/system/xuser/structs/xusergettokenandsignatureutf16httpheader.md)
- [XUserGetTokenAndSignatureOptions](/ja-jp/reference/system/xuser/enums/xusergettokenandsignatureoptions.md)
