React Typescript (.NET 6.0),使用 JavaScript 获取问题 (HTTP Err 431)

Posted

技术标签:

【中文标题】React Typescript (.NET 6.0),使用 JavaScript 获取问题 (HTTP Err 431)【英文标题】:React Typescript (.NET 6.0), fetch problem with JavaScript (HTTP Err 431) 【发布时间】:2022-01-15 04:19:57 【问题描述】:

带有 “您需要启用 JavaScript 才能运行此应用。”的 fetch 调用响应。。如果我在 package.json 中添加"proxy": "http://localhost:3000",则响应如下:HTTP 431 Request Header Fields Too Large,但获取文件大小仅为 160 字节长。

React.Component的内容如下:

export default class Test extends React.Component<any, State> 
    constructor(props: any) 
        super(props);

        fetch('api/Test/Select', 
            headers:  'Content-Type': 'application/json' ,
            method: 'GET',
        )
            .then(response => response.json())          
    

连接器方法如下:

[HttpGet("Select")]
public IActionResult Select()

   try
   
      return Ok();
   
   catch (Exception ex)
   
      return Conflict(ex);
   

package.json文件内容如下:


  "name": "clientapp",
  "version": "0.1.0",
  "private": true,
  "proxy": "http://localhost:3000",
  "dependencies": 
    "@testing-library/jest-dom": "^5.15.1",
    "@testing-library/react": "^11.2.7",
    "@testing-library/user-event": "^12.8.3",
    "react": "^17.0.2",
    "react-dom": "^17.0.2",
    "react-scripts": "4.0.3",
    "react-router-dom": "6.0.2",
    "web-vitals": "^1.1.2",
    "@types/react": "17.0.37",
    "@types/reactstrap": "8.7.2",
    "antd": "4.17.2"
  ,
  "devDependencies": 
    "cross-env": "7.0.3",
    "typescript": "4.5.2"
  ,
  "scripts": 
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  ,
  "eslintConfig": 
    "extends": [
      "react-app",
      "react-app/jest"
    ]
  ,
  "browserslist": 
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  

【问题讨论】:

我们可以写一些代码吗?就像 javascript fetch 和你的服务器端代码一样 【参考方案1】:

也许 .NET 6 的 fetch 有一个错误,idk。 我刚刚将项目降级到 .NET Core 3.1,一切正常。

【讨论】:

以上是关于React Typescript (.NET 6.0),使用 JavaScript 获取问题 (HTTP Err 431)的主要内容,如果未能解决你的问题,请参考以下文章

记一次Typescript+react的match的坑

无法按照官方指示创建 React Native + TypeScript 应用程序

LayaBox---TypeScript---JSX

尝试使用 Github Actions 工作流将 React App 部署到 Azure,但在 TypeScript 中出现错误

深入浅出TypeScript- 在React项目中使用TypeScript

使用 Typescript 创建 React 组件