Composer->不包含有效的JSON

4

使用命令“composer search 'tokens'”,我的IDE报错了。我无法从packagist.org搜索或下载包。

C:\ProgramData\ComposerSetup\bin\composer.bat search fosuserbundle

  [Seld\JsonLint\ParsingException]                                        
  "http://packagist.org/packages.json" does not contain valid JSON        
  Parse error on line 1:                                                  
  <HTML><HEAD><meta h                                                     
  ^                                                                       
  Expected one of: 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '['  



search [-N|--only-name] tokens1 ... [tokensN]

你尝试在浏览器中打开该URL了吗? - simbabque
好的,我可以确认服务器上的packages.json文件是正确的。curl -i -H 'Accept:application/json' http://packagist.org/packages.json要再试一次吗? - bishop
我正在使用PhpStorm中直接使用Composer,使用已部署的ComposerSetup:composer.phar。是否存在与代理设置或某些本地或公司防火墙考虑相关的问题? - Felix Aballi
首先,我通过命令提示符中的“SET”行检查了环境变量是否已初始化。稍后我重新启动了计算机。现在一切都正常了。所有问题都是由于使用公司代理连接引起的。 - Felix Aballi
1个回答

0
在Windows机器上,我按照所有这些步骤进行操作,并获得了正确的行为(我的问题发生在composer require时,但我相信使用composer search或者如果我们使用composer install等方式描述是相同的。所以,让我们看看以下步骤:

  1. 更新Composer (`composer self-update`)
  2. 禁用IPV6(如官方文档中所指出,错误配置的IPV6设置是问题的常见来源)
  3. 删除(或将其重命名为repo_temp)文件夹%LOCALAPPDATA%\Composer\repo(以便更新所有内容)
  4. 删除(或将其重命名为vendor_temp)项目内的vendor文件夹(以便强制Composer重新下载所有组件,如此线程评论中所指出

完成这些步骤后,在我的情况下,问题已经解决了!

之前的消息(错误):

> composer require ...
...

"https://packagist.org/packages.json" does not contain valid JSON
Parse error on line 1:
▼\\\\\\♥��ݎ♀���
^
Expected one of: 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '['
https://packagist.org could not be fully loaded, package information was loaded from the local cache and may be out of date

执行步骤后的消息(OK):

> composer require ...

...

Writing lock file
Generating autoload files

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接