1. 程式人生 > >Web Api 入門實戰 (快速入門+工具使用+不依賴IIS)

Web Api 入門實戰 (快速入門+工具使用+不依賴IIS)

屁話我也就不多說了,什麼簡介的也省了,直接簡單概括+demo演示

你可以把webapi理解為面向資源程式設計(就是通過http請求來直接操作,比如get post put delete等等)

 工具:PostMan

先不講技術,先引入,讓大家看看這個是什麼?

這個是webapi裡面的某個控制器,裡面定義了很多方法,和http請求有一一對應的嫌疑

api控制器裡面的方面一般都是和請求對應的(逆天建議這樣去寫)

比如我們請求一下get,返回的資料就是我們上面方法的返回值

Post請求一下

Delete請求一下

+++++++++++++++++++++++++++++++++++華麗的分割線+++++++++++++++++++++++++++++++++++++++++

下面帶著你的疑問跟我一起快速入門:

下面我們建一個webapi的專案(面向資源程式設計肯定是未來一大方向)

新增一個控制器

取個名字

他會自動繼承apiContrller,定義幾個常見的方法(請求)

方法可以有過載,方法體裡面和C#程式碼差不多,原來怎麼寫還怎麼寫

執行一下, 訪問:http://localhost:6023/api/home預設會訪問get的無參方法就和mvc裡面預設訪問index方法一樣

注意了,和mvc不一樣咯

如果是mvc的home控制器

那麼肯定是這樣的訪問: xxx/Home/Get

我們直接利用工具更形象的操作一下:

很多api介面都是用他來寫,這次我們來帶個引數:

這個是最基本的使用方法

有人會問了,web程式怎麼訪問呢?

我不說話,給個提示你自己體驗一下:

$.post('',{},function(){
});

+++++++++++++++++++++++++++下面的是拓展部分不要求掌握+++++++++++++++++++++++++++++++++++++=

下面說一下不依賴於IIS的方式

用nuget新增web api owin self host包(對比傳統專案引用,nuget的好處==》你依賴啥,我就幫你引入啥,不要你操心

新增一個Owin的Startup類,類似於我們傳統專案的Global檔案

配置一下webapi,可以參考傳統webapi裡面的"路由"

新增一個控制器的資料夾,並新增一個類

繼承一下apiController並定義一下常見方法

在main方面裡面啟動owin host

這邊如果出錯==》一般都是端口占用的時候或者許可權不夠導致的

執行一下,用工具測試一下

帶引數的時候

然而只是這樣嗎?nonono,神奇的事情即將發生。我已經把vs關了

下面看owin牛逼之處,我們把剛才生成的檔案直接開啟

用工具再次模擬請求一下

擦~網站就這麼不需要部署了?

收工,下面的你們自己研究了,不然太沒意思了

相關推薦

Web Api 入門實戰 快速入門+工具使用+依賴IIS

屁話我也就不多說了,什麼簡介的也省了,直接簡單概括+demo演示 你可以把webapi理解為面向資源程式設計(就是通過http請求來直接操作,比如get post put delete等等)  工具:PostMan 先不講技術,先引入,讓大家看看這個是什麼? 這個是webapi裡面的某個控制器

rust web框架actix 快速入門文件譯----基礎第一節

入門 讓我們編寫第一個actix Web應用程式! Hello, world! 首先建立一個新的基於二進位制的Cargo專案並切換到新目錄: cargo new hello-world cd hello-world 現在,通過確保您的Cargo.toml包含以

Docker基礎入門實戰

art The 開機自啟動 inf 應用程序 51cto 管理 x86 正在 Docker基礎入門實戰第1章 docker簡介1.1 what is DockerDocker是一個開源的應用容器引擎,基於Go語言並遵從Apache2.0協議開源,源代碼部

pandas學習快速入門

資料結構Series #Series 是一個一維陣列結構,可以存入任一一種python的資料型別(integers, strings, floating point numbers, Python objects, etc.)。 from pandas import Series pri

Numpy講解快速入門

  ''' import numpy as np [[1,2,3], [4,5,6]]#這代表的的是一個列表 array=np.array([[1,2,3], [4,5,6]])#通過這個函式就轉換成了陣列 print(array) prin

docker入門實戰理論+實踐系列--docker部署和映象容器管理

1、docker安裝 docker安裝需要安裝docker所需要的yum源,國內來說,阿里雲的yum源推薦首選,docker-ce的yum源地址:wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 採用yum安裝d

docker入門實戰理論+實踐系列---進入docker的三種方式

對於執行的docker容器,我們有三種方式進入docker容器內部,但三種方式存在不同的區別,且在生成環境中,慎用進入docker的方式非常有必要 1、docker attach進入docker容器 對於執行在後臺的docker容器,我們經常需要做的事情是進入到容器中,docker為我們提供了dock

Maven入門實戰——依賴新增、依賴範圍和SpringMVC的結合

 上一節中我們介紹了Maven的作用以及相關的安裝配置方法和一個非常簡單的例項,接下來我們更近一步,為了加深對專案的影響,我們將結合SpringMVC進行Maven專案的實戰。 1 Maven的依賴新增  首先我們先建立一個Maven工程,建立方法同上一節中的方法,

Maven入門實戰——MVN的安裝、配置、生命週期、簡單入門例項和建立父/子工程

1 Maven簡介  Maven是Apache旗下的一個開源專案,是純Java開發的一個專案管理工具,並且只是用來管理Java專案的。 1.1 Maven的好處  1)Maven專案佔用容量小 同樣的一個專案,如果是用Maven構建的話,專案的大小要小得多。(這是由於Ma

docker入門實戰理論+實踐系列---docker網路配置和資料卷管理

docker可以存在自身的網路配置和資料卷管理方式,首先docker容器作為一個獨立的執行單元,可以有獨立的IP地址、埠等資訊。同時,nginx是無狀態的,當docker重啟之後,容器會恢復到初始化映象狀態(即docker是無狀態的),資料卷的存在實現了宿主機和docker容器之間的資料共享,本篇文章以n

Docker入門實戰——Docker環境準備

一、虛擬機器安裝Linux 1.1 安裝centos 最小版安裝步驟:》》》》》》》》傳送ing; 注意事項: 1、英文不過硬的童鞋,千萬選擇中文安裝過程 2、生成環境推舉安裝最小版,個人學習推舉安裝DVD選擇桌面版 3、語言支援和鍵盤,請同時新增中文和英文環境

Docker入門實戰——基於jenkins部署微服務

一、部署前端Vue專案 第一步、編寫構建指令碼xxx-build.sh port=xxx #根據埠號查詢對應的pid pid=$(netstat -nlp | grep :$port | awk '{print $7}' | awk -F"/" '{ print $1 }'); #殺掉對應

Docker入門實戰——部署jenkins

一、安裝jenkins 1.1 war包形式安裝(推舉) 第一步、下載安裝包:https://pkg.jenkins.io/redhat-stable 第二步、解壓:rpm -ivh jenkins-*.rpm 第三步、放置在tomcat的webapps目錄下 第四步、進入tom

Docker入門實戰——搭建gitlab伺服器

  一、 安裝gitlab sudo docker run --detach --hostname gitlab.example.com --privileged=true \ --publish 18083:443 --publish 18081:80 --publish 1

vue專案引入vux-ui框架詳解快速入門

一、新建自帶vux框架的vue專案(免配置) 1、安裝vue環境 (已安裝,跳過這一步) 2、新建基於vux的vue專案; vue init airyland/vux2 projectName //(新建專案配置已省略) cd projectName

【Spark】Spark Quick Start快速入門翻譯

 本文主要是翻譯Spark官網Quick Start。只能保證大概意思,儘量保證細節。英文水平有限,如果有錯誤的地方請指正,輕噴 快速入門(Quick Start)   使用 Spark Shell 互動式程式設計     基本操作     更多關於 Dataset 的操作     快取   獨立

自學Springboot第一篇快速入門

SpringBoot的核心入口類和@SpringBootApplication Spring Boot的專案一般都會有*Application的入口類,入口類中會有main方法,這是一個標準的Java應用程式的入口方法。 @SpringBootApplication 註解

Celery 筆記一快速入門

在一個應用服務中,對於時效性要求沒那麼高的業務場景,我們沒必要等到所有任務執行完才返回結果,例如使用者註冊場景中,儲存了使用者賬號密碼之後,就可以立即返回,後續的賬號啟用郵件,可以用一種非同步的形式去處理,這種非同步操作可以用佇列服務來實現。否則,如果等到郵件傳送成功可能幾秒過去了。 Cel

Keras入門實戰1:MNIST手寫數字分類

前面的部落格中已經介紹瞭如何在Ubuntu下安裝Keras深度學習框架。 現在我們使用 Keras 庫來學習手寫數字分類。 我們這裡要解決的問題是:將手寫數字的灰度影象(28 畫素×28 畫素)劃分到 10 個類別 中(0~9)。我們將使用 MNIST 資料集,它是機器學

Docker入門實戰----使用Dockerfile建立自己的映象

上一篇文章中,我們是使用了別人做好的映象來使用docker。 更多的映象可以到https://hub.docker.com/查詢 這篇文章,我們將自己來製作映象。 自己製作映象非常簡單,只需要自己寫一個Dockerfile,build之後就能得到一個映象。