public static async Task <AccessTokenResult> GetAccessToken(this PaypayClient client) { HttpClient http = new HttpClient(); http.DefaultRequestHeaders.Add("Accept", " application/json"); http.DefaultRequestHeaders.Add("Accept-Language", " en_US"); var authToken = Encoding.ASCII.GetBytes($"{client.ClientId}:{client.Secret}"); http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(authToken)); var response = await http.PostAsync(client.Host + "/v1/oauth2/token", new StringContent("grant_type=client_credentials")); if (response.StatusCode == HttpStatusCode.OK) { string content = await response.Content.ReadAsStringAsync(); var result = JsonConvert.DeserializeObject <AccessTokenResult>(content); client.AccessToken = result.AccessToken; return(result); } else { return(null); } }
public async Task AccessTokenTest() { var client = new PaypayClient { ClientId = config.ClientId, Secret = config.Secret }; var result = await client.GetAccessToken(); Assert.IsNotNull(result); }
public static async Task <CreateOrderResult> CreateOrder(this PaypayClient client, CreateOrderArg arg) { string text = JsonConvert.SerializeObject(arg); var http = new HttpClient(); var response = await http.PostAsync(client.Host + "/v2/checkout/orders", new StringContent(text)); if (response.StatusCode == HttpStatusCode.OK) { var content = await response.Content.ReadAsStringAsync(); return(JsonConvert.DeserializeObject <CreateOrderResult>(content)); } else { return(null); } }