Posts

Adding Swagger UI with JWT Authentication in asp.net web api

Image
Introduction
Swagger allows you to describe the structure of your APIs so that machines can read them. The ability of APIs to describe their own structure is the root of all awesomeness in Swagger. Why is it so great? Well, by reading your API’s structure, we can automatically build beautiful and interactive API documentation. We can also automatically generate client libraries for your API in many languages and explore other possibilities like automated testing. 

Swagger does not only allows you to do API documentation but you can also authorize each endpoint in the swagger doc. In this tutorial, I use JWT to authenticate and pass the token to the "api_key" field which gives you access to protected resources.

If you're not familiar with swagger, you should try checking out their website http://swagger.io/


Adding Swagger UI with JWT Authentication in asp.net web API

To authenticate your swagger using jwt tokens, you have to start by installing the swashbuckle NuGet package…

Host multiple Website on one Amazon EC2 instance Using IIS

Image
Hosting multiple websites on IIS server Hosting multiple websites on Amazon Ec2 using IIS is simple, all you need to do is add a firewall inbound rule, edit the site binding in IIS, add a custom TCP rule in the ec2 security group to support the port you are going to be using.

For example, you have two websites, one is the web app and the other is the Web API, and you need to use the same IIS server, the first thing to do is:

1) Add a custom TCP Rule in the ec2 dashboard under NETWORK & SECURITY tab









2) Open the RDP file and configure open IIS and create the two websites. after creating the websites,
you edit the binding for the two websites using port 81 on the API and port 80 on the web app.












3) Click on the start menu and type firewall, click on the windows firewall and advanced security, click the "Inbound Rule" and create a new rule. Select rule type "Port" and click next, specify port 81, allow connection from "public, private and domain rules".
























N…

Nativescript-Cannot find a compatible Android SDK for compilation. To be able to build for Android, install Android SDK 22 or later.

Image
Installing typescript and the SDK required, was a pain in the ass, but after spending days on the internet, I finally found a way to get it working.
Before getting NativeScript to display the “No Issues Detected”, it was very difficult. The common problems people are facing is not being able to get NativeScript to find the SDK to user and also the right version.














The issue:
Cannot find a compatible Android SDK for compilation. To be able to build for Android, install Android SDK 22 or later. Run $ android to manage your Android SDK versions.
You need to have Android SDK 22 or later and the latest Android Support Repository installed on your system. Run $ android to manage the Android Support Repository

After installing NativeScript and the required JDK and going through the documentation online, the error above was thrown.
Solution
I found out that NativeScript was looking at another folder in the “c:\users\USR \ AppData\Local\Android\sdk” directory for the SDK path. I also have another SDK pat…

Difference Between Hangfire And MSMQ

Image
Hangfire or MSMQ
Developers are confused when it comes to making a decision whether to use Hangfire or MSMQ, what difference is MSMQ to Hangfire or are they really doing the same thing? Whether you decide to use Hangfire or MSMQ or both for your applications, it would work. But there is a slight difference.



What is Hangfire
Hangfire is an open-source framework that helps to create, process and manage your background jobs, i.e. operations you don't want to put in your request processing pipeline: Mass notifications/newslettersBatch import from XML,CSV,JSONBuilding different graphs ...


What is MSMQ

Message Queuing (MSMQ) technology enables applications running at different times to communicate across heterogeneous networks and systems that may be temporarily offline. Applications send messages to queues and read messages from queues.


Differences 

Working with enterprise applications that require lot of persistent logic, and your applications communicate across heterogeneous networks, somet…

Simple Bitcoin Calculator

Image
Introduction
Hello, it's crypto time!!! I am going to show you how to use Bitcoin exchange rates and currency conversion that supports all major currencies. I am currently using Coindesk which provides API to make data programmatically available to others. 
To use the  API, you don't need to register, it is free!
You can check out the supported currencies available on their website. To use the endpoint, you make a request to:
https://api.coindesk.com/v1/bpi/currentprice/[code].json
The code parameter accepts a valid ISO 4217 currency code 
A sample request















Take a look at the result, you would notice the rate and the rate_float object, which contains the exchange rate for the local currency to BTC. Below is a formula to convert BTC to your local currency.
Formula = BTC Amount * Exchange Rate = Local currency Price
Building the Bitcoin Calculator

Using a client to consume the JSON data returned from the endpoint is the first thing to do. You can use Asp.Net HttpClient class, Jquery getJso…

Coingate in .Net

Image
Accepting payment in Bitcoin C#

Accepting payment on your e-commerce site, online stores and your custom website have never been easy, but with the Bitcoin Payment Gateway, it is a relief. There is a lot of BTC payment gateway on the internet which provides means for merchants to receive payment, Buy and Sell BTC, receive BTC in their local currency and also create digital wallets.



The few providers out there are:
http://www.BitPay.com
http://coinbase.com
http://coingate.com
http://Gourl.io
And lots more…

BTC payment using Coingate
Coingate allows you to buy and sell Bitcoin, accept Bitcoin using the merchant API. For Java/PHP developers, visit the developer section https://developer.coingate.com/ for implementation guide or you can download one of the examples listed.  In this tutorial, I am going to show you how to use C# to accept payment in BTC with Coingate. Before you can become a merchant you have to sign up and verify your account. For testing, you can sign up here https://sandbox.coin…

Sending Notification Message with Firebase with JavaScript and .Net client

Image
Sending Notification Message with Firebase with JavaScript and ASP.Net client
Introduction to Firebase
Firebase Cloud Messaging (FCM) is a cross-platform messaging solution that lets you reliably deliver messages at no cost.
FCM server has two components for sending and receiving messages which are: The trusted environment (app server)FCM serversIt is the job of the app server to send the message to the FCM server which then sends the message to the client device.
The trusted environment can be an app server for sending messages; you can also use the Admin SDK or HTTP and XMPP APIs. The work of the server is to forward the message to the FCM server which then sends to the client.
Find out more about how it works here: https://firebase.google.com/docs/cloud-messaging/ In this tutorial, I will show you how to use firebase using JavaScript client to send token and notification messages to the FCM Legacy server.
Setting up Firebase Cloud Messaging Client App with JavaScript
The FCM JavaScript API…