标签: response-headers

无法获取jQuery AJAX响应头

这就是我正在尝试的:

$.ajax({
  type: 'GET',
  url: 'http://imgur.com/upload/',
  data: {
    url: 'http://upload.wikimedia.org/wikipedia/commons/3/3e/Phalaenopsis_JPEG.png'
  },
  complete: function(jqXHR, textStatus) {
    console.log(jqXHR.getAllResponseHeaders());
  }
});
Run Code Online (Sandbox Code Playgroud)

我只是得到一个空字符串.

任何帮助,将不胜感激.

编辑:

这些是我在Firebug中可以看到的响应头:

Server: nginx
Date: Sat, 02 Jul 2011 03:04:26 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: close
Set-Cookie: IMGURSESSION=asdfasdfasdfasdf; path=/; domain=.imgur.com
SERVERID=www4; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Location: http://imgur.com/ocuVX
Content-Encoding: gzip
Vary: Accept-Encoding

javascript ajax jquery http-headers response-headers

2
推荐指数
1
解决办法
8614
查看次数

在响应标题栏中设置多个选项

我们如何为flask中的标题设置多个选项.例如:我想在Cache-Control标头中设置两个选项,一个是max-age,另一个是public/private.我如何在Flask中做到这一点?目前我已经实现了这一点.

from flask import Flask, jsonify, abort, request, json, Response

app = Flask(__name__)

book_list = ['Peaceful Warrior', 'The Monk who sold his ferrari', 'Lord of the Rings', 'Game of Thrones', 'The True Name', 'The Da Vinci Code',
            'Angels and Demons', 'Fear of Flying', 'Harry Potter and Half Blood Prince']

# create a in-memory book-store
books = [{'id': id, 'name': book} for id, book in enumerate(book_list, 1)]
@app.route('/books', methods=['GET'])
def get_books():
    if 'name' in request.args: …
Run Code Online (Sandbox Code Playgroud)

python flask response-headers

2
推荐指数
1
解决办法
1154
查看次数

如何将头盔实现到节点服务器中?[不含快递]

npm第一次尝试使用模块,并且尝试实现helmet到服务器模块中以设置安全头。我知道这helmet是为了Express但我没有使用Express

我可以在以下服务器模块中继续使用“头盔”吗?如果是这样,我该如何处理(将感谢代码示例)?如果没有,我该如何使用它将“插入”到下面的模块中,或者应该以不同的方式进行攻击?

感谢您的帮助/投入。

'use strict';

var helmet  = require('helmet')
  , web     = require('node-static')
  , chalk   = require('chalk');

var server;

module.exports = plugin;

function plugin(options) {
  var defaults = {
      cache: 0
    , port: 8080
    , host: "localhost"
    , verbose: false
  };

  var opts = options || {};

  setDefaults(opts, defaults);

  return function(files, staticsmith, done) {
    if (server) {
      done();
      return;
    }

    var docRoot = staticsmith.destination()
      , fileServer = new web.Server(docRoot, { …
Run Code Online (Sandbox Code Playgroud)

node.js response-headers npm helmet.js

2
推荐指数
1
解决办法
1817
查看次数

Chrome 控制台中的 Clear-Site-Data 标头错误

我正在尝试为我们的网站实现一个缓存清除按钮,它将在特定路由上附加 Clear-Site-Data 标头,以便我们可以相对确定用户在发布后获得最新的 javascript、css 等。我在 ActionMethod 中分配标头,如下所示: 在此处输入图片说明

根据开发人员工具,我在客户端获取标题:

在此处输入图片说明

因此,Chrome 正在尝试执行我的要求,但它抛出一个错误,指出我传递的类型无法识别: 加载带有 Clear-Site-Data 标头的页面时出现控制台错误

我是否缺少创建标题的方式?这是一个错误吗?

c# asp.net-mvc response-headers

2
推荐指数
1
解决办法
2285
查看次数

解析PHP CURL数据

过去一天我一直在搞乱CURL,我似乎无法弄清楚如何解析返回数据.我知道我可以编写一个REGEX来从响应中提取数据,但似乎有一些我可能遗漏的功能.这是我想尝试做的事情.

我想将POST发送到另一个域并返回3个东西1.响应头2.响应数据3.会话cookie

有没有办法可以分别取回这3件东西?现在我只是回复带有响应头和响应数据的纯文本响应.我希望能够做类似的事情

$Response = curl_exec($Curl_Connection);
$ResponseData = $Response['Data'];
$ResponseHeader = $Response['Header'];
ResponseCookie = $Response['Cookie'];
Run Code Online (Sandbox Code Playgroud)

卷曲是否提供这样的东西?

php cookies curl response-headers

1
推荐指数
1
解决办法
6944
查看次数

VB.NET ASMX将响应头作为XML而不是JSON返回

我的ASMX电话正在返回 Content-Type = text/xml; charset=utf-8

我正在使用ASP.NET 3.5和jQuery.Ajax.
根据Stack Overflow的众多建议添加了这些内容

我做过这些事

  1. 在web.config上完成此操作

    <remove verb="*" path="*.asmx"/>
    <add verb="*" path="*.asmx" validate="false"
    type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    
    Run Code Online (Sandbox Code Playgroud)
  2. 在ASMX内部的函数调用中,我正在使用它们

    <WebMethod()> _
    <ScriptMethod(ResponseFormat:=ResponseFormat.Json)> _
    Public Function GetCompanies(SearchedCompany As String) As String
    
    Run Code Online (Sandbox Code Playgroud)
  3. jQuery Ajax调用是这样的

    var searchString = "SearchedCompany=" + $(".auto-company").val();
    $.ajax({
        type: "POST",
        url: "Services/CompaniesService.asmx/GetCompanies",
        data: searchString,
        dataType: 'json',
        success: function (msg) {
            companies = msg.hasOwnProperty("d") ? msg.d : msg;
        },
        error: function (xhr, status, error) {
    
        }
    });
    
    Run Code Online (Sandbox Code Playgroud)

但无论我做什么,响应头仍然是xml类型.我在这里错过了什么?

免责声明:我知道这里已多次询问过这个问题.但无法找到任何答案.如您所见,我已经实现了所提供的所有解决方案.

vb.net asp.net ajax response-headers

1
推荐指数
1
解决办法
2399
查看次数

如何从标题中删除X-Powered-By?

我正在使用weblogic,并在响应中得到了以下标头参数:

X-Powered-By    Servlet/3.0 JSP/2.2
Run Code Online (Sandbox Code Playgroud)

经过简单的搜索,我意识到我必须在我的代码中使用以下代码 web.xml

<context-param>
   <param-name>com.sun.faces.sendPoweredByHeader</param-name>
   <param-value>false</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)

但不是为我工作。需要提及的是,当我将应用程序部署到Tomcat中时,此标头不会出现。

servlets weblogic response-headers

1
推荐指数
1
解决办法
7667
查看次数

在Spring Boot中设置响应头

如何在使用Spring Boot创建的应用程序中为每个调用设置响应头?我想尝试使用过滤器来拦截所有调用,并能够设置响应头.我按照指南禁用浏览器缓存HTML5,但只设置请求标头,而不是总是.

no-cache filter browser-cache response-headers spring-boot

1
推荐指数
1
解决办法
6117
查看次数

响应头 Content-Disposition 没有做任何事情

我正在尝试从我的服务器(使用 ASP.NET Core MVC)检索文件并将其显示在浏览器中。在浏览了此处和其他站点上的许多线程后,似乎每次都建议相同的解决方案;这是在响应标头中使用内联的 Content-Disposition。我的代码如下:

IFileInfo file = _fileProvider.GetFileInfo(filename);
Response.Headers.Add("Content-Disposition", $"inline; {file.Name}");
return File(file.CreateReadStream(), "application/pdf", file.Name);
Run Code Online (Sandbox Code Playgroud)

虽然这似乎是基于我见过的其他线程的正确代码,但 Content-Disposition 标头在我的代码中绝对没有任何作用。无论我有标题、删除它还是制作其他东西(即附件),它都会下载并保存文件,但除非我手动打开文件,否则不会显示它。

有谁知道我在这里想念什么?

httpresponse content-disposition response-headers asp.net-core-mvc .net-core

1
推荐指数
1
解决办法
1705
查看次数

GraphQL 突变“在发送到客户端后无法设置标头”

我正在实施 graphql 登录突变来验证用户登录凭据。Mutation 使用 bcrypt 验证密码,然后将 cookie 发送到客户端,客户端将根据 cookie 是买家还是所有者用户来呈现用户配置文件。

GraphQL 登录突变代码:

const Mutation = new GraphQLObjectType({
    name: 'Mutation',
    fields: {
    loginUser: {
            type: UserType,
            args: {
                email: { type: GraphQLString },
                password: { type: GraphQLString }
            },
            resolve: function (parent, args, { req, res }) {
                User.findOne({ email: args.email }, (err, user) => {
                    if (user) {
                        bcrypt.compare(args.password, user.password).then(isMatch => {
                            if (isMatch) {
                                if (!user.owner) {
                                    res.cookie('cookie', "buyer", { maxAge: 900000, httpOnly: false, path: '/' });
                                } else …
Run Code Online (Sandbox Code Playgroud)

response-headers graphql express-graphql graphql-mutation

1
推荐指数
1
解决办法
2421
查看次数

添加安全头以响应 spring MVC 应用程序

我想在 Spring MVC 的响应头中添加以下头:

X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Run Code Online (Sandbox Code Playgroud)

我在 MvcConfig 文件中编写了以下代码,该文件扩展了WebMvcConfigurerAdapter

 @Bean 
    public Filter securityHeadersFilter() { 
        return new OncePerRequestFilter(){ 
            @Override 
            protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { 
                filterChain.doFilter(request, response); 

                response.setHeader("X-XSS-Protection", "1; mode=block"); 
                response.setHeader("X-Content-Type-Options", "nosniff"); 
            } 
        };
     }
Run Code Online (Sandbox Code Playgroud)

现在,当我点击请求并在浏览器上看到响应标头时,这两个标头不会出现。我没有用 urlPattern 注册过滤器。这是问题还是我错过了其他事情?如果 urlpattern 配置是问题,那么请告诉我如何以及在哪里配置它。

无论如何,我的最终目标是在 Response 标头中超过两个安全标头。

spring-mvc interceptor servlet-filters response-headers

0
推荐指数
1
解决办法
4942
查看次数

如何在Asp.Net Core 2.2.1 Web App中删除服务器头?

我正在使用Asp.Net Core 2.2.1。我正在尝试从响应中删除服务器标头。我尝试options.AddServerHeader = false;在内部添加ConfigureKestrel(),但仍未成功。请协助我解决问题。

这是我的代码:

Program.cs

    public class Program
    {
        public static void Main(string[] args)
        {
            CreateWebHostBuilder(args).Build().Run();
        }

        public static IWebHostBuilder CreateWebHostBuilder(string[] args)
        {
            return WebHost.CreateDefaultBuilder(args)
                .UseStartup<Startup>()
                .ConfigureKestrel((context,options) => {
                    // Set properties and call methods on options
                    options.AddServerHeader = false;
                });
        }
    }
Run Code Online (Sandbox Code Playgroud)

Web.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!-- To customize the asp.net core module uncomment and edit the following section. 
  For more info see https://go.microsoft.com/fwlink/?linkid=838655 -->
  <system.webServer>
    <security>
      <requestFiltering removeServerHeader="true" /> …
Run Code Online (Sandbox Code Playgroud)

c# response-headers kestrel kestrel-http-server asp.net-core

0
推荐指数
1
解决办法
1102
查看次数

如何向 NestJS v8 + GraphQL 中的所有响应添加标头?

我想向 NestJS 框架(v8)中的所有响应添加具有值的自定义标头。我认为正确的方法是使用全局拦截器,但我不知道该怎么做。

我正在添加我的拦截器:

app.useGlobalInterceptors(new HeadersInterceptor());
Run Code Online (Sandbox Code Playgroud)

我发现了多种方法,但没有一个有效。最常见的看起来像:

import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';
import { Observable, tap } from 'rxjs';

@Injectable()
export class HeadersInterceptor implements NestInterceptor {
  intercept(context: ExecutionContext, next: CallHandler): Observable<any> {
    return next.handle().pipe(
      tap(() => {
        const res = context.switchToHttp().getResponse();

        res.setHeader('my-global-header', 'important-value');
      }),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

但我收到错误:

res.setHeader is not a function
Run Code Online (Sandbox Code Playgroud)

编辑:从正确的答案来看,我应该提到我也在使用 GraphQL。

javascript response-headers typescript graphql nestjs

0
推荐指数
1
解决办法
2956
查看次数