精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

HTTP相關返回值異常如何解決(上篇)

青山老竹農 ? 來源:jf_82863998 ? 作者:jf_82863998 ? 2024-10-20 16:40 ? 次閱讀

?

今天我們講講HTTP相關返回值異常如何解決(實例持續更新中)

HTTP介紹

HTTP(超文本傳輸協議,Hypertext Transfer Protocol)是用于在網絡上進行數據交換的應用層協議。它是萬維網(WWW)的基礎,允許客戶端(通常是網頁瀏覽器)與服務器之間進行通信。以下是對 HTTP 的一些基本介紹:

  1. 基本概念 請求-響應模型: HTTP 使用請求-響應模型。客戶端發送請求,服務器處理請求并返回響應。 無狀態協議: 每個請求都是獨立的,服務器不會記住之前的請求狀態。這種設計簡化了服務器的實現,但可能需要其他機制(如 cookies)來管理會話狀態。
  2. 請求和響應請求:

請求行: 包含請求方法(如 GET、POST)、請求的 URL 和 HTTP 版本。

請求頭: 提供有關客戶端環境的信息(如 User-Agent、Accept 等)。

請求體: 僅在某些請求方法(如 POST)中使用,包含要發送的數據。

響應:

狀態行: 包含 HTTP 版本、狀態碼(如 200、404、500)和狀態描述。

響應頭: 提供有關響應的信息(如 Content-Type、Content-Length 等)。

響應體: 包含實際傳輸的數據(如 HTML 文檔、圖像等)。

  1. 常見的 HTTP 方法GET: 請求指定的資源,通常用于獲取數據。(模組支持)
    POST: 向指定資源提交數據,通常用于創建或更新數據。(模組支持)
    PUT: 更新指定資源的內容。
    DELETE: 刪除指定的資源。
    HEAD: 類似于 GET,但服務器只返回響應頭,不返回響應體。
  2. HTTP 狀態碼 HTTP 狀態碼用于表示請求的結果,分為五類:
    1xx: 信息性狀態碼(如 100 Continue)。
    2xx: 成功狀態碼(如 200 OK)。
    3xx: 重定向狀態碼(如 301 Moved Permanently)。
    4xx: 客戶端錯誤狀態碼(如 404 Not Found)。
    5xx: 服務器錯誤狀態碼(如 500 Internal Server Error)。

**HTTP客戶端錯誤狀態碼情況

案例分析以及如何解決**

一、1xx信息性狀態碼

這些狀態碼表示請求已被接收,繼續處理請求。

100 Continue: 客戶端應繼續發送請求的剩余部分。

1.1 狀態碼100的含義:

HTTP 狀態碼 100 Continue 是一個信息性狀態碼,表示客戶端應繼續發送請求的剩余部分。它通常是在客戶端發送一個包含 Expect: 100-continue 頭的請求時,服務器響應的。

使用場景:

大文件上傳: 當客戶端要上傳一個大文件時,它可以先發送一個請求頭,詢問服務器是否準備好接收文件。這時,服務器可以返回 100 Continue,表示可以繼續上傳文件。

節省帶寬: 如果服務器無法處理請求,返回 100 Continue 可以避免客戶端發送大量數據,從而節省帶寬和資源。

具體工作流程:

客戶端發送請求: 客戶端發送一個帶有 Expect: 100-continue 的請求頭。 服務器響應: 如果服務器準備好接收請求,返回 100 Continue,指示客戶端繼續發送請求體。 如果服務器無法處理請求(例如,身份驗證失敗或請求格式不正確),則服務器可以直接返回相應的錯誤狀態碼(如 401 或 403),而不是 100 Continue。

101 Switching Protocols: 服務器已理解客戶端的請求,并將其協議更改為客戶端所請求的協議。

1.2 狀態碼101的含義:

HTTP 狀態碼 101 Switching Protocols 是一個信息性狀態碼,表示服務器已經理解了客戶端的請求,并將協議更改為客戶端所請求的協議。這通常用于在 HTTP 協議和其他協議之間進行切換,例如從 HTTP 協議切換到 WebSocket 協議。

使用場景

WebSocket 連接: 在建立 WebSocket 連接時,客戶端首先發送一個 HTTP 請求,要求服務器將協議切換到 WebSocket。若服務器支持這一請求并同意切換,它會返回 101 狀態碼。

協議升級: 其他情況下,當客戶端請求服務器使用不同的協議進行通信時(如從 HTTP/1.1 切換到 HTTP/2),也會用到此狀態碼。

具體工作流程

客戶端發送請求: 客戶端發送一個帶有 Upgrade 頭的請求,表明希望切換協議。

請求示例:

  • GET /chat HTTP/1.1
  • Host: example.com
  • Upgrade: websocket
  • Connection: Upgrade
  • 服務器響應: 如果服務器支持請求的協議并同意切換,它會返回 101 Switching Protocols,表示協議已成功切換。

服務器響應示例:

  • HTTP/1.1 101 Switching Protocols
  • Upgrade: websocket
  • Connection: Upgrade
  • 后續通信: 協議切換后,客戶端和服務器可以使用新協議進行后續通信。

二、2xx成功狀態碼

這些狀態碼表示請求已成功處理。

200 OK: 請求成功,通常返回請求的資源。

狀態碼200的含義:

HTTP 狀態碼 200 OK 是最常見的成功響應狀態碼,表示請求已成功處理。它通常用于標準的 GET 或 POST 請求,表明服務器已成功接收到請求并返回了所請求的資源。

使用場景
  • GET 請求: 當客戶端請求某個資源(如網頁、圖片等),并且服務器成功找到并返回該資源時,服務器會返回 200 OK。
  • POST 請求: 當客戶端向服務器提交數據(如表單數據)并且服務器成功處理這些數據時,也會返回 200 OK。此時,響應體可能包含操作結果的信息。
示例

圖片?

201 Created: 請求成功并創建了新的資源。

狀態碼201的含義:

HTTP 狀態碼 201 Created 表示請求已成功處理,并且由于該請求,服務器創建了一個新的資源。這個狀態碼通常用于 POST 請求,特別是在客戶端向服務器提交數據以創建新資源時。

使用場景

資源創建: 當客戶端通過 POST 請求向服務器發送數據(例如,提交表單數據)并成功創建一個新資源時,服務器會返回 201 Created。

API 設計: 在 RESTful API 中,201 狀態碼常用于表示新資源的創建成功,并且通常在響應中包含指向該新資源的 URI。

示例

創建新資源的 POST 請求示例:

  • POST /api/users HTTP/1.1
  • Host: example.com
  • Content-Type: application/json
  • Content-Length: 45

{"name": "John Doe", "email": "john@example.com"} 服務器響應示例:

  • HTTP/1.1 201 Created
  • Location: /api/users/123
  • Content-Type: application/json

{"id": 123, "name": "John Doe", "email": "john@example.com"}

關鍵要點
  • Location 頭: 通常在響應中包含 Location 頭,指向新創建資源的 URI。
  • 響應體: 可以在響應體中返回新資源的詳細信息,幫助客戶端確認創建結果。

202 Accepted: 請求已接受,但尚未處理。

狀態碼202的含義:

HTTP 狀態碼 202 Accepted 表示請求已被接受進行處理,但尚未完成。這意味著請求的處理是異步的,服務器已經接收到請求并將其放入處理隊列中,但尚未提供最終結果。

使用場景

異步處理: 202 狀態碼通常用于那些需要較長時間才能完成的操作,例如上傳大文件、復雜的數據處理或與外部服務的交互。

任務排隊: 在某些情況下,服務器會返回 202 狀態碼以指示請求已被接受,但實際的處理將在后續時間內完成。

示例

異步請求的 POST 請求示例:

  • POST /api/process-data HTTP/1.1
  • Host: example.com
  • Content-Type: application/json
  • Content-Length: 50

{"data": "large dataset or task details"} 服務器響應示例:

  • HTTP/1.1 202 Accepted
  • Content-Type: application/json

{"message": "Your request is being processed"}

關鍵要點

請求已接受: 202 狀態碼表明請求已經被接受,而不是直接表示成功完成。 結果不可用: 由于處理是異步的,客戶端通常需要通過其他機制(如輪詢或回調)來獲取處理結果。

203 Non-Authoritative Information: 服務器成功處理了請求,但返回的信息可能來自另一來源。

狀態碼203的含義:

HTTP 狀態碼 203 Non-Authoritative Information 表示請求已成功處理,但返回的信息可能不是來自原始服務器,而是來自一個代理服務器或其他中間實體。這意味著響應的內容可能經過了修改或附加了額外的信息。

使用場景

代理服務器: 當客戶端通過代理服務器發送請求時,代理可能會返回 203 狀態碼以指示響應的內容不是來自原始服務器。

內容修改: 如果代理對響應進行了某種形式的修改,比如添加了額外的頭信息,服務器可能會返回 203 狀態碼,告知客戶端這部分信息可能不具有權威性。

示例

通過代理服務器的請求示例:

  • GET /api/resource HTTP/1.1
  • Host: example.com

代理服務器的響應示例:

  • HTTP/1.1 203 Non-Authoritative Information
  • Content-Type: application/json

{"data": "This data is modified or supplemented by the proxy"}

關鍵要點

非權威性信息: 203 狀態碼用于表示返回的信息可能不是最原始或權威的,客戶端應謹慎對待這些信息。

不常用: 在實際應用中,203 狀態碼的使用相對較少,大多數情況下,客戶端和服務器之間的直接通信更為常見。

204 No Content: 請求成功,但沒有返回內容。

狀態碼204的含義:

HTTP 狀態碼 204 No Content 表示請求已成功處理,但沒有內容返回。這通常用于處理成功的請求,但沒有需要返回給客戶端的實體內容。

使用場景

成功處理的請求: 當客戶端發送請求(例如,DELETE 請求)并且服務器成功處理了該請求,但不需要返回任何內容時,可以使用 204 狀態碼。

更新操作: 在某些情況下,客戶端可能發送更新請求(如 PUT),服務器成功處理后,可以返回 204 狀態碼而不返回任何數據。

保持連接: 204 狀態碼可以用于保持與客戶端的連接,而不傳送實際的數據內容。

示例

成功刪除資源的 DELETE 請求示例:

  • DELETE /api/resource/123 HTTP/1.1
  • Host: example.com

服務器響應示例:

  • HTTP/1.1 204 No Content

關鍵要點

無內容返回: 204 狀態碼明確表示沒有返回的內容,客戶端不應期望任何響應體。

保持連接: 由于沒有內容,204 響應通常具有較小的負擔和較快的處理速度,有助于提高性能。

205 Reset Content: 請求成功,要求客戶端重置文檔視圖。

狀態碼205的含義:

HTTP 狀態碼 205 Reset Content 表示請求已成功處理,但客戶端需要重置視圖或輸入字段。這通常用于表單提交后,服務器希望客戶端清除或重置其當前的內容。

使用場景

表單處理: 當客戶端提交表單后,服務器可能會返回 205 狀態碼,指示客戶端重置表單輸入內容,以便用戶可以進行新的輸入。

UI 狀態重置: 在某些應用程序中,服務器可能希望客戶端清除當前的視圖狀態或數據,以確保用戶體驗的一致性。

示例

表單提交的 POST 請求示例:

  • POST /api/submit-form HTTP/1.1
  • Host: example.com
  • Content-Type: application/x-www-form-urlencoded

name=John&email=john@example.com 服務器響應示例:

  • HTTP/1.1 205 Reset Content
關鍵要點

重置內容: 205 狀態碼明確表示客戶端應該重置其當前的內容或視圖狀態,通常與表單操作相關。

不返回內容: 和 204 狀態碼類似,205 響應通常不包含實體內容。

206 Partial Content: 服務器成功處理了部分 GET 請求,返回的是部分資源。

狀態碼206的含義:

HTTP 狀態碼 206 Partial Content 表示服務器成功處理了部分 GET 請求。這通常用于當客戶端請求資源的某一部分時,服務器能夠滿足該請求并返回所請求的部分內容。

使用場景

范圍請求: 客戶端可能會使用 Range 請求頭來請求資源的特定部分(例如,視頻流、音頻流或大型文件的下載)。服務器根據請求的范圍返回相應的部分內容。

大文件下載: 當用戶下載大文件時,支持恢復下載的客戶端可以請求文件的特定字節范圍,以便在網絡中斷時能夠繼續下載。

示例

范圍請求的 GET 請求示例:

  • GET /large-file.zip HTTP/1.1
  • Host: example.com
  • Range: bytes=0-499

服務器響應示例:

  • HTTP/1.1 206 Partial Content
  • Content-Range: bytes 0-499/123456
  • Content-Length: 500
  • Content-Type: application/zip
關鍵要點

部分內容: 206 狀態碼表示請求成功并返回的是請求的部分內容,而不是整個資源。

Content-Range 頭: 響應中會包含 Content-Range 頭,指示返回的內容范圍和資源的總大小。

三、3xx重定向狀態碼

這些狀態碼表示客戶端需要進一步操作才能完成請求。

300 Multiple Choices: 請求的資源有多種選擇,客戶端可以選擇其中一個。

狀態碼300的含義:

HTTP 狀態碼 300 Multiple Choices 表示請求的資源可以有多種表示,客戶端可以選擇其中之一。這個狀態碼通常用于指示用戶或應用程序有多個選項可供選擇,并且服務器提供了這些選項的列表。

使用場景

資源重定向: 當請求的資源有多個可用版本(例如,不同語言的網頁、不同格式的文件等),服務器會返回 300 狀態碼,指明可選的資源。

內容協商: 服務器可能根據請求頭(如 Accept 或 Accept-Language)提供不同的響應選項,讓客戶端選擇最合適的內容。

示例

請求的 GET 請求示例:

  • GET /example HTTP/1.1
  • Host: example.com

服務器響應示例:

  • HTTP/1.1 300 Multiple Choices
  • Content-Type: text/html

圖片?

關鍵要點
  • 選擇性: 300 狀態碼表示客戶端可以選擇多個資源,通常伴隨響應內容列出這些選項。
  • 用戶體驗: 該狀態碼可以提升用戶體驗,讓用戶根據需要選擇最適合的資源。

301 Moved Permanently: 請求的資源已被永久移動到新位置,返回的新 URI 在響應中提供。

狀態碼301的含義:

HTTP 狀態碼 301 Moved Permanently 表示請求的資源已經永久移動到一個新的 URI(統一資源標識符),并且所有未來的請求都應使用新的 URI。這個狀態碼通常用于網頁重定向,告知搜索引擎和客戶端該資源的更新位置。

使用場景

網站重構: 當網站的結構或域名發生變化時,可以使用 301 狀態碼來指向新的地址,從而確保用戶和搜索引擎能夠正確找到頁面。

SEO 優化: 使用 301 重定向可以將舊頁面的權重傳遞給新頁面,有助于保持搜索引擎排名。

內容遷移: 當資源從一個位置移動到另一個位置,但希望保持用戶和外部鏈接的有效性時,使用 301 重定向是一個合適的選擇。

示例

請求的 GET 請求示例:

  • GET /old-page HTTP/1.1
  • Host: example.com

服務器響應示例:

  • HTTP/1.1 301 Moved Permanently
  • Location: https://example.com/new-page
  • Content-Type: text/html

圖片?

關鍵要點
  • Location 頭: 響應中包含 Location 頭,指示新的 URI。客戶端應使用該 URI 進行后續請求。
  • 搜索引擎友好: 301 狀態碼告知搜索引擎該頁面永久移動,搜索引擎會更新其索引以反映這一變化。

302 Found: 請求的資源臨時移動到新位置,客戶端應使用新 URI 繼續請求。

狀態碼302的含義:

HTTP 狀態碼 302 Found 表示請求的資源臨時被移動到另一個 URI。當客戶端接收到這個狀態碼時,它應立即使用新的 URI 進行后續請求。這種狀態碼通常用于臨時重定向,意味著原始 URI 仍然有效,未來的請求可能仍然會返回原始資源。

使用場景

臨時重定向: 在需要臨時更改資源位置時,例如網站維護或臨時活動的頁面,302 狀態碼是適合的選擇。

用戶登錄流程: 在用戶成功登錄后,可以使用 302 狀態碼將用戶重定向到他們請求的頁面。

A/B 測試: 在進行 A/B 測試時,可以使用 302 狀態碼將用戶臨時重定向到不同的頁面進行分析。

示例

請求的 GET 請求示例:

  • GET /old-page HTTP/1.1
  • Host: example.com

服務器響應示例:

  • HTTP/1.1 302 Found
  • Location: https://example.com/new-page
  • Content-Type: text/html

圖片?

關鍵要點
  • Location 頭: 響應中包含 Location 頭,指示新的臨時 URI。客戶端應使用該 URI 進行后續請求。
  • 緩存行為: 302 狀態碼通常不會被緩存,因為它表示臨時重定向。

303 See Other: 對請求的響應可在不同 URI 處找到,客戶端應使用 GET 方法請求該 URI。

狀態碼303的含義:

HTTP 狀態碼 303 See Other 表示客戶端應使用 GET 方法請求另一個 URI 來獲取所需的資源。它通常用于在處理 POST 請求后重定向客戶端到一個新的頁面。這一狀態碼的主要目的是確保客戶端獲取資源時使用的是正確的 HTTP 方法。

使用場景

表單提交: 在用戶提交表單(例如,登錄或注冊)后,服務器可以返回 303 狀態碼,將用戶重定向到一個結果頁面,而不是重新提交表單。這有助于避免重復提交。

RESTful API: 在 RESTful 服務中,303 可以用于指示客戶端在某個操作后應獲取資源的不同位置。

狀態更新: 在執行某些操作(如更新或刪除)后,服務器可以使用 303 狀態碼引導客戶端查看更新后的狀態或結果。

示例

請求的 POST 請求示例:

  • POST /submit-form HTTP/1.1
  • Host: example.com
  • Content-Type: application/x-www-form-urlencoded
  • username=user&password=pass

服務器響應示例:

  • HTTP/1.1 303 See Other
  • Location: https://example.com/success
  • Content-Type: text/html

圖片?

關鍵要點
  • Location 頭 : 響應中包含 Location 頭,指示新的 URI。客戶端應使用 GET 方法請求該 URI。
  • HTTP 方法 : 303 狀態碼確保客戶端在重定向后使用 GET 方法,而不是繼續使用原來的請求方法(如 POST)。

304 Not Modified: 客戶端的緩存版本是最新的,服務器沒有新內容。

狀態碼304的含義:

HTTP 狀態碼 304 Not Modified 表示所請求的資源自上次請求以來沒有被修改。這通常與緩存機制相關,用于指示客戶端可以使用其緩存的版本,而不需要重新下載資源。

使用場景 緩存優化: 當客戶端向服務器請求資源時,它可能會發送一個條件請求,附帶 If-Modified-Since 或 If-None-Match 頭。如果資源在服務器上沒有被修改,服務器會返回 304 狀態碼,從而節省帶寬和提高加載速度。

減少延遲: 通過使用 304 狀態碼,服務器可以減少不必要的數據傳輸,提高性能。

示例

請求的 GET 請求示例:

  • GET /image.png HTTP/1.1
  • Host: example.com
  • If-Modified-Since: Wed, 21 Oct 2023 07:28:00 GMT

服務器響應示例:

  • HTTP/1.1 304 Not Modified
關鍵要點
  • 條件請求: 304 狀態碼通常與條件請求一起使用,客戶端會在請求中包含 If-Modified-Since 或 If-None-Match 頭。
  • 沒有消息體: 在響應中,304 狀態碼通常不會包含消息體,因此不會傳輸任何資源數據。

305 Use Proxy: 請求的資源必須通過指定的代理訪問。

狀態碼305的含義:

HTTP 狀態碼 305 Use Proxy 表示請求的資源必須通過指定的代理進行訪問。此狀態碼的使用并不常見,且在某些情況下可能會造成安全隱患,因此在現代 web 開發中很少被使用。

使用場景

代理需求: 當服務器希望客戶端通過特定的代理服務器來訪問請求的資源時,可以使用 305 狀態碼。如果客戶端沒有配置該代理,則可能無法訪問所請求的資源。 示例 請求的 GET 請求示例:

  • GET /resource HTTP/1.1
  • Host: example.com

服務器響應示例:

  • HTTP/1.1 305 Use Proxy
  • Location: http://proxy.example.com:8080/

在這個例子中,響應中的 Location 頭指示客戶端應該通過 http://proxy.example.com:8080/ 這個代理來訪問所請求的資源。

關鍵要點
  • 安全隱患: 由于 305 狀態碼可能會導致安全問題(例如,惡意代理),很多瀏覽器和 HTTP 客戶端并不支持或忽略這一狀態碼。
  • 不常用: 這個狀態碼在實際應用中并不常見,通常開發者會選擇其他方法來實現類似的功能。

307 Temporary Redirect: 請求的資源臨時移動到新位置,客戶端應使用原來的請求方法繼續請求。

狀態碼307的含義:

HTTP 狀態碼 307 Temporary Redirect 表示請求的資源臨時移動到一個新的 URI。與 302 狀態碼類似,307 也用于臨時重定向,但有一個重要的區別:307 確保客戶端在重定向時使用原始的 HTTP 方法。

使用場景

保持方法一致性: 當客戶端發起一個 POST 請求時,如果服務器返回 307 狀態碼,客戶端在重定向到新 URI 時仍然使用 POST 方法。這在某些情況下非常重要,例如提交表單后需要臨時重定向到不同的頁面。

臨時重定向: 用于指示資源臨時移動到新位置,適用于需要在短期內更改資源位置的場景。

示例

請求的 POST 請求示例:

  • POST /submit-form HTTP/1.1
  • Host: example.com
  • Content-Type: application/x-www-form-urlencoded
  • data=value

服務器響應示例:

  • HTTP/1.1 307 Temporary Redirect
  • Location: http://example.com/thank-you

在這個例子中,客戶端會被告知資源臨時移動到 http://example.com/thank-you,并且仍然會使用 POST 方法進行請求。

關鍵要點
  • 方法保持: 與 302 狀態碼不同,307 狀態碼要求客戶端在重定向時保持原始的 HTTP 方法。
  • 臨時性: 307 狀態碼是臨時的,表示將來可能會恢復到原始 URI。

308 Permanent Redirect: 請求的資源永久移動到新位置,客戶端應使用原來的請求方法繼續請求。

狀態碼303的含義:

HTTP 狀態碼 308 Permanent Redirect 表示請求的資源已被永久移動到一個新的 URI,并且客戶端在重定向時應繼續使用原始的 HTTP 方法(例如,POST、PUT等)。

使用場景

方法保持: 與 301 狀態碼不同,308 確保在重定向時客戶端使用原始的 HTTP 方法。這對于某些操作(如文件上傳或表單提交)非常重要。

永久性重定向: 用于指示資源永久性地移動到新的位置,適用于需要更新鏈接或資源地址的場景。

示例

請求的 POST 請求示例:

  • POST /old-endpoint HTTP/1.1
  • Host: example.com
  • Content-Type: application/json

{"key": "value"}

服務器響應示例:

  • HTTP/1.1 308 Permanent Redirect
  • Location: http://example.com/new-endpoint

在這個例子中,客戶端會被告知資源永久移動到 http://example.com/new-endpoint,并且在重定向時仍然使用 POST 方法進行請求。

關鍵要點
  • 方法保持: 308 狀態碼確保客戶端在重定向時保持原始的 HTTP 方法,這對于某些請求非常關鍵。
  • 永久性: 308 表示請求的資源已被永久移動,客戶端應更新其鏈接。

?

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5068

    文章

    19019

    瀏覽量

    303289
  • 物聯網
    +關注

    關注

    2903

    文章

    44275

    瀏覽量

    371266
  • HTTP
    +關注

    關注

    0

    文章

    501

    瀏覽量

    31065
收藏 人收藏

    評論

    相關推薦

    C語言函數的返回值

    當然,C語言程序員中還有一種“行業潛規則”。如果定義的函數是個布爾函數,也即返回值顯式的使用類似于 bool 關鍵字定義,或者函數名類似于 is_true(),那么顯然此時應該遵守C語言語法,使用“真”表示成功,“假”表示失
    發表于 08-31 10:11 ?1644次閱讀

    C語言中函數的返回值指向一個指針

    函數的返回值類型必須與函數體內的返回表達式的類型相匹配。如果類型不匹配,編譯器會報錯。此外,C 語言中的函數只能返回一個,如果需要返回多個
    的頭像 發表于 04-26 11:01 ?3063次閱讀
    C語言中函數的<b class='flag-5'>返回值</b>指向一個指針

    main函數返回值的認知

    退出,否則代表程序異常退出。在 C89(C語言的早期標準)中,main() 是可以接受void返回值的。Brian W. Kernighan 和 Dennis M. Ritchie 的經典巨著
    發表于 10-24 11:08

    關于返回值類型為void的函數的返回值

    我對C語言比較熟悉而嵌入式了解不多。今天和一個嵌入式開發討論C語言的時候遇到一個這樣的問題。void f(){}對于一個返回值類型為void的函數我認為這個函數是沒有返回值。而那個嵌入式開發卻認為
    發表于 05-18 09:34

    Arduino/ESP8266函數不返回值導致異常的原因?

    () { } 所以 initFunc 應該返回一個 int 而不是,但是安裝程序忽略了返回值。在 C 中,這會生成 警告:控件到達非空函數 [-Wreturn-type] 的末尾 ,但運行正常。 在
    發表于 05-08 07:36

    利用函數參數和返回值提高嵌入式軟件質量

    利用函數參數和返回值提高嵌入式軟件質量  引 言   提高軟件代碼的質量是每一個軟件設計者都必須考慮的問題,這涉及軟件的有效性和經濟價值。基于嵌
    發表于 11-07 09:48 ?762次閱讀
    利用函數參數和<b class='flag-5'>返回值</b>提高嵌入式軟件質量

    WebApi之接口返回值的四種類型

    Webapi的接口返回值主要有四種類型 void無返回值 IHttpActionResult HttpResponseMessage 自定義類型 void無返回值 大家都知道void聲明的是一個無
    發表于 11-27 14:52 ?1.3w次閱讀

    C語言程序開發中關于函數返回值的問題

    C語言函數可以通過返回值表示輸出結果,例如 log() 函數的返回值會根據不同的輸入,返回不同的。再比如,我們定義一個函數 myopen(),用于打開某個文件,那么,這個函數要么能夠
    發表于 09-06 10:01 ?930次閱讀

    Rust代碼啟發之返回值異常錯誤處理

    這樣的代碼,錯誤處理代碼和業務邏輯交織在一起,也容易忽略處理錯誤。以及把返回值只用于錯誤返回,有點浪費的感覺。因為很多時候把計算結果作為返回值,更符合思考的邏輯。
    的頭像 發表于 09-22 09:24 ?2095次閱讀
    Rust代碼啟發之<b class='flag-5'>返回值</b><b class='flag-5'>異常</b>錯誤處理

    return-函數的返回值是什么

    return關鍵字后接變量名或表達式可以將函數的計算結果返回到調用處。變量或表達式等同于接收果汁、豆漿的杯子。如果函數沒有返回值,return可以省略不寫。沒有返回值的意思是程序執行完畢之后,不需要給調用函數處提供數據。
    的頭像 發表于 02-23 10:52 ?1154次閱讀
    return-函數的<b class='flag-5'>返回值</b>是什么

    什么是函數的返回值

    函數的返回值是函數被調用后,執行所調用函數內代碼后所得出的結果,并且將返回給主函數的
    的頭像 發表于 04-04 17:21 ?4810次閱讀

    Python函數作為返回值

    函數作為返回值 函數除了作為代碼塊,作為接收參數,還可以把函數作為結果返回。 例子: 可變參數的求和: 通常 def calc_sum ( *args ): ax = 0 for n in args
    的頭像 發表于 09-27 17:01 ?1045次閱讀

    ARM異常返回值的合法有哪些?各返回值分別代表什么?

    ARM異常返回值的合法有哪些?各返回值分別代表什么? ARM異常返回值的合法
    的頭像 發表于 10-19 16:36 ?831次閱讀

    一站式統一返回值封裝、異常處理、異常錯誤碼解決方案—最強的Sping Boot接口優雅響應處理器

    1. 前言 統一返回值封裝、統一異常處理和異常錯誤碼體系的意義在于提高代碼的可維護性和可讀性,使得代碼更加健壯和穩定。統一返回值封裝可以避免每一個接口都需要手工拼裝響應報文;統一
    的頭像 發表于 06-20 15:42 ?458次閱讀

    HTTP相關返回值異常何解決(下篇)

    ?今天我們講講HTTP相關返回值異常何解決(實例持續更新中)一、4xx客戶端錯誤狀態碼這些狀態碼表示請求有問題,通常是由于客戶端的錯誤引起
    的頭像 發表于 10-24 17:24 ?435次閱讀
    <b class='flag-5'>HTTP</b><b class='flag-5'>相關</b><b class='flag-5'>返回值</b><b class='flag-5'>異常</b>如<b class='flag-5'>何解</b>決(下篇)