Skip to content

Instantly share code, notes, and snippets.

View Mirch's full-sized avatar
🎯
Focusing

Mircea Teodor Oprea Mirch

🎯
Focusing
View GitHub Profile
public async Task<T> GetAs<T>(string path)
{
var response = await _client.GetStringAsync(path);
return JsonConvert.DeserializeObject<T>(response);
}
public async Task<string> Post(string path, object content)
{
StringContent postContent = new StringContent(JsonConvert.SerializeObject(content));
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
[Route("api/[controller]")]
public class PersonController : Controller
{
[HttpGet("person")]
public IActionResult GetPerson()
{
return Ok(new Person() { Name = "John", Age = 23});
}
[HttpPost("person")]
[Route("api/[controller]")]
public class SandboxController : Controller
{
private readonly RequestSender _requestSender;
public SandboxController()
{
_requestSender = new RequestSender("https://localhost:44327/api/person/");
}
var result = (await _requestSender.PostAsync("postPerson", person, ContentType.XML)).ResultAs<Person>(ContentType.XML);
@Mirch
Mirch / jwt.json
Created November 30, 2018 09:41
jwt.json
{
"alg": "HS256",
"typ": "JWT"
}
{
"sub": "1234567890",
"name": "Adi Cucolaș",
"iat": 1516239022
}
app.post('/api/login', (req, res) => {
// Mock user
const user = {
id: 1,
username: '1055984',
email: '1055984@ucn.com'
};
jwt.sign({ user }, 'secretkey',
{ expiresIn: '30s' }, (err, token) => {
app.post('/api/posts', verifyToken,
(req, res) => {
jwt.verify(req.token, 'secretkey',
(err, authData) => {
if (err) {
res.sendStatus(403);
} else {
res.json({
message: 'Post created...',
authData
// FORMAT OF TOKEN
// Authorization: Bearer <access_token>
// Verify Token
function verifyToken(req, res, next) {
// Get auth header value
const bearerHeader = req.headers['authorization'];
// Check if bearer is undefined
if (typeof bearerHeader !== 'undefined') {
// Split at the space
app.post('/api/posts',
passport.authenticate('jwt',
{ session: false }),
handlePost)