【问题标题】:External Images to greyscale外部图像转灰度
【发布时间】:2012-12-19 07:02:39
【问题描述】:

我在我的大学从事一个小项目,我遇到了一个问题,我在横幅中将灰度应用于从 Google 的 Picasa 服务器外部加载的图像。 我尝试为任何加载的图像创建灰度画布,但是在尝试获取图像数据时我可以看到安全错误。

我正在使用 jQuery、HTML、PHP 和 Ajax 语言。

您可以在这里找到整个项目: Google Code Project

我尝试使用这个库: $getImageData

但我收到一条信息,我的请求无法处理。 我还尝试了许多其他库和代码,但没有结果。

【问题讨论】:

  • 提供给出错误的代码和错误详情。
  • 该项目中的 grayscale.js 在哪里?

标签: php jquery html grayscale securityexception


【解决方案1】:

您正在使用“json”数据类型进行跨域请求,该数据类型不是有效的跨域数据类型。您应该得到相同的来源错误。您需要切换到 jsonp 数据类型。

jQuery('.container').ready(function() {
    jQuery.ajax({
        type: 'GET',
        dataType:'jsonp',
        url: 'https://picasaweb.google.com/data/feed/base/user/115131339234962778181/album/jsite?access=public&kind=photo&alt=json-in-script',

注意,我也更改了网址,不要错过更改,这很重要。

https://developers.google.com/gdata/docs/json

【讨论】:

    【解决方案2】:

    当您在画布上绘制外部数据时,它会被标记为已污染。污染会禁用您从画布中获取图像数据的能力。但是,您应该能够使用 .crossOrigin attribute

    更改该行为

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-02
      • 2018-11-28
      • 1970-01-01
      • 2010-11-20
      相关资源
      最近更新 更多