カスタムHTTPヘッダーをエンドポイントに送信するにはどうすればよいですか?

フラン

認証トークンを送信しようとしていますが、サーバーがそれを受信して​​いません。

//service.ts

...
import { HttpClient, HttpHeaders } from '@angular/common/http';
...

 getAllUsers():Observable<User[]>{
 return this.http.get<User[]>(this.backendUrl.getUrl.concat('rest/user/getallusers'),
{headers: new HttpHeaders()
  .set('Authorization', 'Token asdasd')
  .set("Content-Type", "application/json")
});

}

//終点

@RequestMapping(value = "/getallusers", method = RequestMethod.GET, consumes = MediaType.APPLICATION_JSON_VALUE)
public List<User> getallusers() {
    return this.userService.getAllUsers();
}

// TokenFilter

@Override
    public Authentication attemptAuthentication(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws AuthenticationException, IOException, ServletException {

        String header = httpServletRequest.getHeader("Authorization");
        //Header is null here when I do a request from the browser
        //but with postman it does has a value.
        if (header == null || !header.startsWith("Token ")) {
            throw new RuntimeException("JWT Token is missing");
        }

        String authenticationToken = header.substring(6);

        JwtAuthenticationToken token = new JwtAuthenticationToken(authenticationToken);
        return getAuthenticationManager().authenticate(token);
    }

// CorsConfiguration

@Override
public void addCorsMappings(CorsRegistry registry) {
   registry.addMapping("/**").allowedOrigins("*")
   .allowedMethods("GET","POST","DELETE");
}

しかし、POSTMANを使用して実行すると、機能します。何が足りないのですか?

ここに画像の説明を入力してください

編集:HttpClientの使用

編集:テキストへのImg

Request Headers
Accept:*/*
Accept-Encoding:gzip, deflate, br
Accept-Language:es-ES,es;q=0.9
Access-Control-Request-Headers:authorization,content-type
Access-Control-Request-Method:GET
Connection:keep-alive
Host:localhost:2030
Origin:http://localhost:4200
User-Agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36

編集:回答、バックエンドでCORSをアクティブ化

@Override protected void configure(HttpSecurity http)は例外をスローします{

http.csrf().disable()
    .cors()  //<-- This one was missing
    .and()
    .addFilterBefore(authenticationTokenFilter(), UsernamePasswordAuthenticationFilter.class)
    .authorizeRequests().antMatchers("login").permitAll()
    .and()
    .authorizeRequests().antMatchers("rest/**").authenticated()
    .and()
    .exceptionHandling().authenticationEntryPoint(entryPoint)
    .and()
    .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
    .and()
    .headers()
    .cacheControl();

}

user4676340

これは、ここにドキュメントがある新しいものを試す良い機会かもしれません。HttpClient

単に交換する

import { Http } from '@angular/http'; // old version
import { HttpClient } from '@angular/common/http'; // new version

新しいクライアントでは、ヘッダーは次のように提供されます

http
  .post('/api/items/add', body, {
    headers: new HttpHeaders().set('Authorization', 'my-auth-token'),
  })

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

カスタムエラードキュメントのHTTPヘッダーにアクセスするにはどうすればよいですか?

分類Dev

HTTPリクエストでurllib2を使用してカスタムヘッダーを送信するにはどうすればよいですか?

分類Dev

Ngxs + WebSocket | 接続をインターセプトしてカスタムHTTPヘッダーを追加するにはどうすればよいですか?

分類Dev

JS / Reactでカスタムヘルパーをエクスポートおよびインポートするにはどうすればよいですか?

分類Dev

SuperAgentが行うすべてのリクエストにカスタムHTTPヘッダーを挿入するにはどうすればよいですか?

分類Dev

React Nativeのヘッダーにカスタムタイトルとボタンを追加するにはどうすればよいですか?

分類Dev

(ネストされた)StackNavigator内にカスタムヘッダーアイコンを実装するにはどうすればよいですか?

分類Dev

Scrapy Splashリクエストでカスタムヘッダーを送信するにはどうすればよいですか?

分類Dev

lagomサービスエンドポイントの呼び出し中にリクエストヘッダーで送信されるcsrfトークンを取得するにはどうすればよいですか?

分類Dev

SpringのWebClientを使用してカスタムヘッダー付きの削除リクエストを送信するにはどうすればよいですか?

分類Dev

HTTP ::デーモン:HTTPヘッダーでサーバーのカスタム値を設定するにはどうすればよいですか?

分類Dev

SignalRのTypescriptクライアントにカスタムヘッダーを追加するにはどうすればよいですか?

分類Dev

Azure App Serviceで静的サイトにカスタムHTTP応答ヘッダーを追加するにはどうすればよいですか?

分類Dev

Amazon APIゲートウェイを使用してカスタムエンドポイントを作成するにはどうすればよいですか?

分類Dev

GAEエンドポイントでカスタムユーザーオブジェクトを取得するにはどうすればよいですか?

分類Dev

カスタムチャットUIからDialogFlowエージェントにリクエストを送信するにはどうすればよいですか?

分類Dev

Authorizationヘッダーを必要とするCachingAPIエンドポイントを許可するにはどうすればよいですか?

分類Dev

ペイロード付きのカスタムメッセージをボットからクライアントアプリケーションにダイレクトライン経由で送信するにはどうすればよいですか?

分類Dev

odoo 13でPDFレポートをダウンロードするカスタムボタンを作成するにはどうすればよいですか?

分類Dev

カスタムドメインでSSLAWS API Gatewayエンドポイントを作成するにはどうすればよいですか?

分類Dev

カスタムクエリセットをCSV形式でダウンロードするにはどうすればよいですか?

分類Dev

ヘッダーパラメータを使用してHTTPリクエストを送信するにはどうすればよいですか?

分類Dev

Odoo 10のQwebレポートでカスタムヘッダーとフッターを作成するにはどうすればよいですか?

分類Dev

フォームでカスタムメソッドを使用して、Djangoの別のサーバーからリクエストを送信し、レスポンスを受け入れるにはどうすればよいですか?

分類Dev

spyderIDEのキーボードショートカットをエクスポート/インポートするにはどうすればよいですか?

分類Dev

ChromeカスタムタブにカスタムHTTPヘッダーを追加するにはどうすればよいですか?

分類Dev

`HyperlinkButton`コントロールのカスタムヘッダーを設定するにはどうすればよいですか?

分類Dev

Pjsua-2 Android-通話中にカスタムヘッダーをINVITEリクエストに追加するにはどうすればよいですか?

分類Dev

Vuetify:複数のダイアログ内タイムピッカーコンポーネントを作成するにはどうすればよいですか?

Related 関連記事

  1. 1

    カスタムエラードキュメントのHTTPヘッダーにアクセスするにはどうすればよいですか?

  2. 2

    HTTPリクエストでurllib2を使用してカスタムヘッダーを送信するにはどうすればよいですか?

  3. 3

    Ngxs + WebSocket | 接続をインターセプトしてカスタムHTTPヘッダーを追加するにはどうすればよいですか?

  4. 4

    JS / Reactでカスタムヘルパーをエクスポートおよびインポートするにはどうすればよいですか?

  5. 5

    SuperAgentが行うすべてのリクエストにカスタムHTTPヘッダーを挿入するにはどうすればよいですか?

  6. 6

    React Nativeのヘッダーにカスタムタイトルとボタンを追加するにはどうすればよいですか?

  7. 7

    (ネストされた)StackNavigator内にカスタムヘッダーアイコンを実装するにはどうすればよいですか?

  8. 8

    Scrapy Splashリクエストでカスタムヘッダーを送信するにはどうすればよいですか?

  9. 9

    lagomサービスエンドポイントの呼び出し中にリクエストヘッダーで送信されるcsrfトークンを取得するにはどうすればよいですか?

  10. 10

    SpringのWebClientを使用してカスタムヘッダー付きの削除リクエストを送信するにはどうすればよいですか?

  11. 11

    HTTP ::デーモン:HTTPヘッダーでサーバーのカスタム値を設定するにはどうすればよいですか?

  12. 12

    SignalRのTypescriptクライアントにカスタムヘッダーを追加するにはどうすればよいですか?

  13. 13

    Azure App Serviceで静的サイトにカスタムHTTP応答ヘッダーを追加するにはどうすればよいですか?

  14. 14

    Amazon APIゲートウェイを使用してカスタムエンドポイントを作成するにはどうすればよいですか?

  15. 15

    GAEエンドポイントでカスタムユーザーオブジェクトを取得するにはどうすればよいですか?

  16. 16

    カスタムチャットUIからDialogFlowエージェントにリクエストを送信するにはどうすればよいですか?

  17. 17

    Authorizationヘッダーを必要とするCachingAPIエンドポイントを許可するにはどうすればよいですか?

  18. 18

    ペイロード付きのカスタムメッセージをボットからクライアントアプリケーションにダイレクトライン経由で送信するにはどうすればよいですか?

  19. 19

    odoo 13でPDFレポートをダウンロードするカスタムボタンを作成するにはどうすればよいですか?

  20. 20

    カスタムドメインでSSLAWS API Gatewayエンドポイントを作成するにはどうすればよいですか?

  21. 21

    カスタムクエリセットをCSV形式でダウンロードするにはどうすればよいですか?

  22. 22

    ヘッダーパラメータを使用してHTTPリクエストを送信するにはどうすればよいですか?

  23. 23

    Odoo 10のQwebレポートでカスタムヘッダーとフッターを作成するにはどうすればよいですか?

  24. 24

    フォームでカスタムメソッドを使用して、Djangoの別のサーバーからリクエストを送信し、レスポンスを受け入れるにはどうすればよいですか?

  25. 25

    spyderIDEのキーボードショートカットをエクスポート/インポートするにはどうすればよいですか?

  26. 26

    ChromeカスタムタブにカスタムHTTPヘッダーを追加するにはどうすればよいですか?

  27. 27

    `HyperlinkButton`コントロールのカスタムヘッダーを設定するにはどうすればよいですか?

  28. 28

    Pjsua-2 Android-通話中にカスタムヘッダーをINVITEリクエストに追加するにはどうすればよいですか?

  29. 29

    Vuetify:複数のダイアログ内タイムピッカーコンポーネントを作成するにはどうすればよいですか?

ホットタグ

アーカイブ