2020年7月29日 星期三

Web_APi加強補述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using WebApplication1.Models;

namespace WebApplication1.Controllers
{
    // 路由前綴
    [RoutePrefix("api/user")]
    public class UserController : ApiController
    {
        [HttpPost]//沒有用restful風格,需要自己制定用哪種類型來處理
        [Route("Login")]//路由名稱
        public string  Login(LoginViewModel model)
        {
            return "ok";
        }
        [HttpGet]//沒有用restful風格,需要自己制定用哪種類型來處理
        [Route("Message")]//路由名稱
        public IHttpActionResult GetMessage()
        {
            //return Ok();
            // return NotFound();
            // return InternalServerError();
            //return InternalServerError(new Exception("你錯了"));
            //因為Ok,NotFound,InternalServerError都實作了IHttpActionResult介面的類
            //所以可以直接返回,而只有Ok可以帶值回去
            return Ok(new Student()
            {
                Id = 1,
                Name = "及格了"
            });
        }
    }
}

=====================================================================
     public void Post([FromBody]string value)
        {
        }

只能由前端透過data:{ LoginName: "admin",LoginPwd:"123456"}的方式傳值過去

$.ajax({
            url: "api/user/Login",
             type: "Post",
             data: {
                     LoginName: "admin",
                     LoginPwd:"123456"
                      }
            }).done(function () {
              console.info("成功了");
                }).fail(function (err) {
              console.info(err.responseJSON.ExceptionMessage);
========================================================================
     public void Post(int Id , [FromBody]string value)
        {
               //Id 從querystring過來,value從jason過來
        }

一般會建議下列寫法
  public void Post(int Id , Student stu)
        {
             
        }




C#进阶系列——WebApi 接口返回值不困惑:返回值类型详解(IHttpActionResult介面)

https://www.cnblogs.com/landeanfen/p/5501487.html


webAPI_PUT_Delete








web api取得錯誤訊息






2020年7月10日 星期五

端點偵測


arp偵測區網的可疑ip


1.判斷主機有哪些可開放的port
2.應該要鎖定對外開方的port(windows防火牆規則設定)
3.找出主機對外連線(Listener)的可疑ip及port及該應用程式
4.中斷該應用程式連線並搬移該應用程式觀察或刪除


在這些欄位中要特別檢視的是 『Local Address』欄位內的 port number 以及『State』欄位的 SYN_SENT 這個狀態。 若出現大量的連線,port number 呈現連續性(正常的話應為隨機性,不至於出現大量的連續性,除非整個網路只有一部主機連線),並且『State』持續為 SYN_SENT 的狀態時,則可大約判定網路連線是處於異常狀態。 找出開啟網路連線的程式

http://wiki.kmu.edu.tw/index.php/%E6%89%BE%E5%87%BA%E9%96%8B%E5%95%9F%E7%B6%B2%E8%B7%AF%E9%80%A3%E7%B7%9A%E7%9A%84%E7%A8%8B%E5%BC%8F

找出開啟網路連線的程式

http://wiki.kmu.edu.tw/index.php/%E6%89%BE%E5%87%BA%E9%96%8B%E5%95%9F%E7%B6%B2%E8%B7%AF%E9%80%A3%E7%B7%9A%E7%9A%84%E7%A8%8B%E5%BC%8F


netstat 指令用法,及狀態說明

https://blog.jangmt.com/2010/10/netstat.html

在C#中取得前景視窗(ForegroundWindow)的應用程式名稱

http://codingjames.blogspot.com/2010/09/cforegroundwindow.html


How to get the full path of running process?

網路連線檢查及入侵偵測與網路病毒

C# 網路連線檢查


C# 示例:檢測網路連線


第十一章 入侵偵測與網路病毒

WPF聊天室应用(ASP.NET Core SignalR)

  WPF聊天室应用(ASP.NET Core SignalR) https://www.bilibili.com/video/BV1Q741187Si?p=2 https://www.bilibili.com/video/BV1UV411e75T?from=search&...